Open-Source-Tool zum Erstellen eines ETL-Parsers

Ich muss einen ETL-Parser in Java erstellen. Gibt es ein Open-Source-Tool oder -Framework zum Erstellen eines ETL-Parsers für unstrukturierte Daten?

Ich möchte einen Parser erstellen und muss das Format in der Eigenschaftendatei definieren, und der Parser muss in der Lage sein, gemäß dem Format in der Eigenschaftendatei zu analysieren.

Ich frage nicht nach dem vollständigen Code. Jeder Vorschlag wäre willkommen.

Was meinst du mit "ETL". ETL wie in "Extract", "Transfer", "Load"?
Genau, Übertragungslast extrahieren..!

Antworten (3)

Um einfache und komplexe Etl-Prozesse zu erstellen, empfehle ich Kettle. Derzeit unter dem Namen Pentaho Data Integration. Geschrieben in Java mit schöner GUI und einfach in Java-Software zu integrieren. Quelle vorhanden. Siehe Webseite .

Ich habe in Open Source gefragt ... es scheint, dass Wasserkocher nicht Open Source ist ...!
Siehe community.pentaho.com/faq/general.php und oss-watch.ac.uk/resources/apache2 . In meiner Vision ist die Apache-Lizenz v2 Open Source. Wofür benötigen Sie es oder haben Sie eine bestimmte Lizenzform, die für Ihr Projekt erforderlich ist, z. B. GPL, LGPL oder BSD?

Das einzige Open-Source-Framework, das ich für die ETL-Verarbeitung in Java kenne (und verwende), ist Spring-Batch und es ist die einzige Implementierung (AFAIK) der jsr-352. Ich bin mir nicht sicher, ob es zu Ihnen passt, weil ich bei einer einfachen Google-Suche einige reine ETL-Frameworks wie CloverETL
gefunden habe, aber ich habe sie noch nicht ausprobiert, daher kann ich mir keine Meinung bilden. Bisher benutze ich Spring-Batch seit fast 6 Monaten für ETL und Batch-Verarbeitung und bin sehr zufrieden damit :) Hoffe, ich konnte ein wenig helfen!

Vielen Dank für die Beantwortung. Ich lasse diese Frage für weitere Vorschläge offen. +1 ..
Spring-Batch ist ein Batch-Prozessor. Obwohl es theoretisch zum Erstellen eines ETL-Tools verwendet werden kann, bringt es keinen großen Mehrwert und stellt keine Komponenten zur Unterstützung von ETL bereit. Sie sollten Ihre Antwort auf CloverETL konzentrieren, das als ETL-Framework tausendmal besser geeignet ist :-) Danke!
@NicolasRaoul erlauben Sie mir zu widersprechen, wenn ich sage, dass SB nur ein Batch-Prozessor ist, ist das so, als würde man sagen, dass Fahrzeuge keine Gegenstände transportieren sollten, weil sie dafür gemacht sind, Menschen zu transportieren. SB ist sehr beliebt für die ETL-Verarbeitung (deshalb habe ich geantwortet), wenn der Benutzer über Grundkenntnisse in Java verfügt und eine Google-Suche dies beweisen kann :) . Andererseits kann ich mich nicht auf CloverETL konzentrieren, da ich es nie verwendet habe und auch nicht vorhabe, ich mache ETL-Jobs mit SB. Um die Wahrheit zu sagen, glaube ich, dass SB für diese Frage besser geeignet ist als Clover, da es sich um ein JAVA-FRAMEWORK handelt , wie die Frage vermuten lässt
Interessant! Das Hinzufügen dieser Informationen zur Antwort wäre großartig :-)

Für volle Transparenz arbeite ich für Talend.

Talend hat eine Open-Source-Version unserer Datenintegrationsfunktionen namens Talend Open Studio. Die Ausgabe von Talend ETL-Jobs ist nativer Code. Bei herkömmlichen Systemen wäre dies Java.

Talend Open Studio hat über 3 Millionen Downloads und eine große Benutzergemeinschaft unter https://www.talendforge.org/ .