© marivlada/Shutterstock.com, © S&S Media
Java Magazin
Teil 2: Integration verschiedener Datentypen

Neues von Farin und Co.

Nachdem Sie im vorherigen Teil dieser Serie Neo4j und einige sanfte Grundlagen der Graphentheorie kennen gelernt haben, möchte ich Ihnen im zweiten Teil zeigen, wie Sie Neo4j mit Daten befüllen können. Bestands- und Bewegungsdaten entstehen in der Regel durch die Benutzung von Anwendungen, die mit einer Datenbank interagieren. Stammdaten werden jedoch oftmals initial geladen, aggregiert oder in anderer Art und Weise angereichert. Neo4j bietet - mit oder ohne externe Werkzeuge - eine Vielzahl von Möglichkeiten, Daten zu laden und als Graph zu speichern.

Michael Simons


ArtikelserieTeil 1: Anwendungsentwicklung auf Basis von Neo4j im Spring-ÖkosystemTeil 2: Integration verschiedener DatentypenTeil 3: Möglichkeiten, mit Neo4j zu kommunizieren

Die Abschnitte zum Laden von Daten aus relationalen Datenbanken sind natürlich nur relevant, wenn Sie bereits eine relationale Datenbank mit relevanten Daten in Betrieb haben. Ist das nicht der Fall und möchten Sie einfach nur die Beispiele ausprobieren, können Sie zum Beispiel meine PostgreSQL-Datenbank mit musikalischen Statistiken aus bootiful-music [1] oder aber auch die Sakila Sample Database [2] testen. Ich habe in den Repositories meines Spring-Boot-Buchs [3] eine PostgreSQL-Variante [4]. Weitere Ports finden Sie zum Beispiel auf den jOOQ-Seiten der Data Geekery: The Sakila Database [5].

Einfache Migration von relationalen Datenbanken mit Neo4j-ETL

Im ersten Teil dieser Serie haben Sie bereits die Neo4j-Desktop-Distribution kennen gelernt. Über die Desktopoberfläche können Sie das Neo4j-ETL-Werkzeug installieren. ETL steht für Extract, Transform and Load [6]. Neo4j-ETL kann über standardkonforme JDBC-Treiber mit vielen relationalen Datenbanken interagieren und Daten extrahieren. Wechseln Sie über die Schaltfläche Graph Applications zu den installierten Anwendungen für Graphen (Abb. 1).

Abb. 1: Neo4j-ETL-Werkzeug installieren

Tragen Sie im Feld Install Graph Application den URL r.neo4j.com/neo4j-etl-app [7] ein, um das Neo4j-ETL-Werkzeug zu installieren. Über die Schaltfläche Add Application fügen Sie das Werkzeug anschließend Ihrem Projekt hinzu. Starten Sie nun die Datenbank und anschließend das ETL-Werkzeug (Abb. 2).

Abb. 2: Neo4j-ETL-Werkzeug

Über die Schaltfläche Add connection konfigurieren Sie die Verbindung zur relationalen Datenbank. Der Graph des Projekts ist bereits vorab ausgewählt.

Neo4j liefert zusammen mit dem ETL-Werkzeug die JDBC-Treiber einiger bekannter Datenbanken mit aus (Abb. 3). Im Beispiel habe ich der Einfachheit halber den PostgreSQL-Treiber genutzt. Über den Typ jdbc haben Sie die Möglichkeit, eigene JAR-Dateien mit dem passenden Treiber anzugeben. Oracles JDBC-Treiber ist beispielsweise einer der Kandidaten.

Abb. 3: Konfiguration von Neo4j-ETL

Nach erfolgreichem Test der Verbindung können Sie mit der Erstellung der Abbildungsregeln fortfahren.

Abb. 4: Initiale Abbildungsregeln

Nach einiger Zeit sehen Sie – in Abhängigkeit von Ihrem Datenbankschema – eine Darstellung wie in Abbildung 4. Ich habe hier das Schema meiner Musikdatenbank benutzt.

Das ETL-Werkzeug geh...

Java Magazin
Teil 2: Integration verschiedener Datentypen

Neues von Farin und Co.

Nachdem Sie im vorherigen Teil dieser Serie Neo4j und einige sanfte Grundlagen der Graphentheorie kennen gelernt haben, möchte ich Ihnen im zweiten Teil zeigen, wie Sie Neo4j mit Daten befüllen können. Bestands- und Bewegungsdaten entstehen in der Regel durch die Benutzung von Anwendungen, die mit einer Datenbank interagieren. Stammdaten werden jedoch oftmals initial geladen, aggregiert oder in anderer Art und Weise angereichert. Neo4j bietet - mit oder ohne externe Werkzeuge - eine Vielzahl von Möglichkeiten, Daten zu laden und als Graph zu speichern.

Michael Simons


ArtikelserieTeil 1: Anwendungsentwicklung auf Basis von Neo4j im Spring-ÖkosystemTeil 2: Integration verschiedener DatentypenTeil 3: Möglichkeiten, mit Neo4j zu kommunizieren

Die Abschnitte zum Laden von Daten aus relationalen Datenbanken sind natürlich nur relevant, wenn Sie bereits eine relationale Datenbank mit relevanten Daten in Betrieb haben. Ist das nicht der Fall und möchten Sie einfach nur die Beispiele ausprobieren, können Sie zum Beispiel meine PostgreSQL-Datenbank mit musikalischen Statistiken aus bootiful-music [1] oder aber auch die Sakila Sample Database [2] testen. Ich habe in den Repositories meines Spring-Boot-Buchs [3] eine PostgreSQL-Variante [4]. Weitere Ports finden Sie zum Beispiel auf den jOOQ-Seiten der Data Geekery: The Sakila Database [5].

Einfache Migration von relationalen Datenbanken mit Neo4j-ETL

Im ersten Teil dieser Serie haben Sie bereits die Neo4j-Desktop-Distribution kennen gelernt. Über die Desktopoberfläche können Sie das Neo4j-ETL-Werkzeug installieren. ETL steht für Extract, Transform and Load [6]. Neo4j-ETL kann über standardkonforme JDBC-Treiber mit vielen relationalen Datenbanken interagieren und Daten extrahieren. Wechseln Sie über die Schaltfläche Graph Applications zu den installierten Anwendungen für Graphen (Abb. 1).

Abb. 1: Neo4j-ETL-Werkzeug installieren

Tragen Sie im Feld Install Graph Application den URL r.neo4j.com/neo4j-etl-app [7] ein, um das Neo4j-ETL-Werkzeug zu installieren. Über die Schaltfläche Add Application fügen Sie das Werkzeug anschließend Ihrem Projekt hinzu. Starten Sie nun die Datenbank und anschließend das ETL-Werkzeug (Abb. 2).

Abb. 2: Neo4j-ETL-Werkzeug

Über die Schaltfläche Add connection konfigurieren Sie die Verbindung zur relationalen Datenbank. Der Graph des Projekts ist bereits vorab ausgewählt.

Neo4j liefert zusammen mit dem ETL-Werkzeug die JDBC-Treiber einiger bekannter Datenbanken mit aus (Abb. 3). Im Beispiel habe ich der Einfachheit halber den PostgreSQL-Treiber genutzt. Über den Typ jdbc haben Sie die Möglichkeit, eigene JAR-Dateien mit dem passenden Treiber anzugeben. Oracles JDBC-Treiber ist beispielsweise einer der Kandidaten.

Abb. 3: Konfiguration von Neo4j-ETL

Nach erfolgreichem Test der Verbindung können Sie mit der Erstellung der Abbildungsregeln fortfahren.

Abb. 4: Initiale Abbildungsregeln

Nach einiger Zeit sehen Sie – in Abhängigkeit von Ihrem Datenbankschema – eine Darstellung wie in Abbildung 4. Ich habe hier das Schema meiner Musikdatenbank benutzt.

Das ETL-Werkzeug geh...

Neugierig geworden?


    
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang