Get started with the Talend importer
The Talend importer is about to be released as open source (Apache License 2.0). Until then, we run it for you: contact us.
In this tutorial you install the importer in Apache Hop, import a public Talend project of 49 jobs, read the migration report, and run one of the converted jobs. It takes about twenty minutes.
The project is the example code of Packt's Getting Started with Talend Open Studio for Data Integration, published on GitHub under the MIT licence. Nothing you need comes from Talend.
Before you start
- Apache Hop 2.19.0 or later. See Install Apache Hop.
- Java 21, which Hop 2.19 needs anyway.
git.
In the commands below, <hop> is the folder Hop is installed in.
1. Install the plugin
Download importer-talend-<version>.zip from the
importer's releases, once published, and
unzip it into the Hop folder. The zip holds a plugins/ folder, so it lands in the right place:
unzip importer-talend-<version>.zip -d <hop>
Start Hop GUI (or restart it). The File menu now has Import from Talend….
2. Get the Talend project
git clone https://github.com/PacktPublishing/Getting-Started-with-Talend-Open-Studio-for-Data-Integration.git packt
The jobs are in packt/ExampleJobs/GETTINGSTARTEDTOS/process/, one folder per chapter; the sample
data is in packt/SampleDataFiles/.
3. Import it
<hop>/hop-import.sh -t talend -i packt -o talend-to-hop
You can do the same from File → Import from Talend… in Hop GUI: the dialog has the same options on its Source, Target and Metadata tabs.
Expected result: the import ends without errors, and talend-to-hop/ holds:
ExampleJobs/GETTINGSTARTEDTOS/process/Chapter…/: the pipelines (.hpl) and workflows (.hwf), in the same folder layout as the project;environments/:default-config.json,production-config.json,test-config.json, one per Talend context;metadata/: connections, schema definitions and run configurations;talend-migration-report.md.
4. Read the report
Open talend-to-hop/talend-migration-report.md. With importer 0.1.0, its Totals are:
| Metric | Count |
|---|---|
| Jobs | 49 |
| Components | 146 |
| AUTO | 131 |
| PARTIAL | 6 |
| MANUAL | 9 |
| UNSUPPORTED | 0 |
| Flagged for review | 16 |
The other sections tell you where the work is:
- Per job: components and flagged components for each job. Jobs with
0in the last column are the place to start. - Most frequent source components: what the project is made of. Here, file and MySQL I/O,
tMapandtLogRow. - Needs review: every flagged component, with the reason. In this project, mostly the FTP
components, which have no full-fidelity Hop equivalent, and the file-list iterations; one of the
ten
tMaps is flagged, because its expressions should be checked. - Connections and Environments: what the import created, and which passwords you have to add.
These figures describe this project, which is made of teaching examples with almost no embedded Java. Your own project will have its own; see why there is no conversion rate.
5. Run one job
Open talend-to-hop/ExampleJobs/GETTINGSTARTEDTOS/process/Chapter5/Filtering3_0_1.hpl in Hop GUI.
It is the Talend job that splits a list of countries into those that use the euro and those that
don't: a file input, a replicate, two filters and two file outputs. See it next to the original in
Before and after.
The jobs in this project read and write C:/Talend/Workspace/GETTINGSTARTED/…, and the importer
keeps paths as they are. Before you run it:
- In
tFileInputDelimited_1, set the file name topackt/SampleDataFiles/Chapter5/currencies.csv(use the full path). - In
tFileOutputDelimited_1andtFileOutputDelimited_2, set the folder to one you can write to. - Run the pipeline with the
localrun configuration.
Expected result: the pipeline finishes without errors. eur-currencies.csv has 16 rows, all
EUR; not-eurcurrencies.csv has 10, none of them EUR. Those are the rows Talend writes.
Next
- Before and after: this job and its Hop pipeline side by side.
- Assess a Talend project: do the same on your own project.
- Validate a migration: prove a converted job matches the original.