Looking for neo4j Answers? Try Ask4KnowledgeBase
Looking for neo4j Keywords? Try Ask4Keywords

neo4jErste Schritte mit neo4j


Bemerkungen

In diesem Abschnitt erhalten Sie einen Überblick darüber, was Neo4j ist und warum ein Entwickler es verwenden möchte.

Es sollte auch alle großen Themen in neo4j erwähnen und auf die verwandten Themen verweisen. Da die Dokumentation für neo4j neu ist, müssen Sie möglicherweise erste Versionen dieser verwandten Themen erstellen.

Verschlüsselungs-Abfragesprache

Dies ist die Cypher, Neo4j-Abfragesprache. In vielerlei Hinsicht ähnelt Cypher SQL, wenn Sie mit SQL vertraut sind, mit der Ausnahme, dass sich SQL auf in einer Tabelle gespeicherte Elemente bezieht, während Cypher auf in einem Diagramm gespeicherte Elemente verweist.

Zuerst sollten wir lernen, wie man einen Graphen erstellt und Beziehungen hinzufügt, denn genau darum geht es bei Neo4j.

CREATE (ab:Object { age: 30, destination: "England", weight: 99 })
 
  • Sie verwenden CREATE , um Daten zu erstellen
  • Um einen Knoten anzugeben, verwenden Sie Klammern: ()
  • Der ab: Object-Teil kann wie folgt unterteilt werden: eine Variable 'ab' und Bezeichnung 'Object' für den neuen Knoten. Beachten Sie, dass die Variable alles sein kann, aber Sie müssen in einer Zeile der Cypher Query konsistent sein
  • Um dem Knoten Eigenschaften hinzuzufügen, verwenden Sie Klammern: {} Klammern

Als nächstes lernen wir, MATCHes zu finden

MATCH (abc:Object) WHERE abc.destination = "England" RETURN abc;
 

MATCH gibt an, dass Sie nach einem bestimmten Knoten / Beziehungsmuster suchen möchten (abc: Object), bezieht sich auf einen Knoten Pattern (mit der Bezeichnung Object), der die Übereinstimmungen in der Variablen abc speichert. Sie können sich diese gesamte Zeile wie folgt vorstellen

abc =  find the matches that is an Object WHERE the destination is England.
 

In diesem Fall fügt WHERE eine Einschränkung hinzu, die besagt, dass das Ziel England sein muss. Sie müssen am Ende für alle MATCH-Abfragen eine Rückgabe angeben (neo4j akzeptiert nicht nur eine Übereinstimmung ... Ihre Abfrage muss immer einen Wert zurückgeben. Dies hängt auch davon ab, welche Art von Abfrage Sie schreiben ... wir werden mehr darüber sprechen Später, wenn wir die anderen Arten von Abfragen einführen, die Sie erstellen können].

Die nächste Zeile wird in der Zukunft erklärt, nachdem wir einige weitere Elemente der Cypher Query Language durchgearbeitet haben. Hier erfahren Sie, was wir mit dieser Sprache machen können! Unten finden Sie ein Beispiel, das die Besetzung von Filmen zeigt, deren Titel mit 'T' beginnt.

MATCH (actor:Person)-[:ACTED_IN]->(movie:Movie)
WHERE movie.title STARTS WITH "T"
RETURN movie.title AS title, collect(actor.name) AS cast
ORDER BY title ASC LIMIT 10;
 

Eine vollständige Liste der Befehle und ihrer Syntax finden Sie hier auf der offiziellen Neo4j Cypher Reference Card .

Installation & Starten eines Neo4j-Servers

Vorausgesetzte Schritte:

  • Installieren Sie Java auf Ihrem Computer
  • Besuchen Sie die neo4j-Website und klicken Sie auf den Link "Download Community Edition" oder besuchen Sie direkt den Download-Link .
  • Entpacken Sie die heruntergeladene .tar-Datei in Ihr Home-Verzeichnis

Starten Sie Neo4j von der Konsole aus (ohne Kopfhörer, ohne Webserver)

  • Besuchen Sie das Unterverzeichnis /bin des extrahierten Ordners und führen Sie es in der Terminal- ./neo4j console
  • Sie können jetzt neo4j-Abfragen im Terminal ausführen

Starten Sie den Neo4j-Webserver

  • ./neo4j start Sie das Unterverzeichnis / bin des extrahierten Ordners auf und führen Sie es im Terminal ./neo4j start
  • Besuchen Sie http: // localhost: 7474 /
  • Nur beim ersten Mal müssen Sie sich mit dem Standardkonto anmelden und das Standardkennwort ändern. Ab Community-Version 3.0.3 sind der Standardbenutzername und das Standardpasswort neo4j und neo4j.
  • Sie können jetzt Neo4j-Abfragen in die Konsole Ihres Webbrowsers einfügen und die Ergebnisse der einzelnen Abfragen visuell untersuchen.

Starten Sie den Neo4j-Webserver

Jeder Neo4j-Server kann derzeit (in der Community Edition) eine einzige Neo4j-Datenbank hosten, um eine neue Datenbank einzurichten:

  • ./neo4j stop Sie das Unterverzeichnis /bin und führen Sie ./neo4j stop , um den Server zu stoppen
  • Besuchen Sie das Unterverzeichnis /conf und bearbeiten Sie die Datei neo4j.conf . Ändern Sie den Wert des Parameters dbms.active_database in den Namen der neuen Datenbank, die Sie erstellen möchten.
  • ./neo4j start Sie erneut das Unterverzeichnis / bin auf und führen Sie ./neo4j start
  • Der Webserver wurde erneut mit der neuen leeren Datenbank gestartet. Sie können erneut http: // localhost: 7474 / besuchen, um mit der neuen Datenbank zu arbeiten.
  • Die erstellte Datenbank befindet sich im Unterverzeichnis /data/databases unter einem Ordner mit dem Namen, der im Parameter dbms.active_database .

Löschen Sie eine der Datenbanken

  • Stellen Sie sicher, dass der Neo4j-Server nicht läuft. Gehen Sie in das Unterverzeichnis / bin und führen Sie den ./neo4j status . Wenn die Ausgabenachricht anzeigt, dass der Server ausgeführt wird, führen ./neo4j stop auch ./neo4j stop .

  • Wechseln Sie dann in das Unterverzeichnis / data / database und löschen Sie den Ordner der Datenbank, die Sie entfernen möchten.

Installation oder Setup

Installieren Sie Neo4j, das die Betriebssystemplattform über Ihren Webbrowser erkennen soll, und laden Sie die üblichen Installationsanweisungen für Ihr Betriebssystem herunter.

Neo4j wurde mit Java erstellt und läuft daher auf jeder Plattform, auf der Java installiert ist. Das Neo4j-Team hat jedoch die Installation vereinfacht, indem es einfache Installationspakete für beliebte Plattformen (z. B. eine .dmg für Mac, eine .deb für Debian und Ubuntu sowie eine .exe) bereitstellt für Windows 64- und 32-Bit-Plattformen ...).

Informationen zu anderen verfügbaren Versionen und Plattformen finden Sie auf der Seite Other Neo4j Releases

Richten Sie Neo4j als Docker-Container ein:

## Required : Docker machine, docker cli

# Pull neo4j image from the docker hub
docker pull neo4j

# create the docker container
docker run \
    --publish=7474:7474 --publish=7687:7687 \
    --volume=$HOME/neo4j/data:/data \
    neo4j

# If you are running docker directly on the host (e.g ubuntu, RHEL, CentOs etc)
#     Access the neo4j console at http://localhost:7474
# If you are on OSX/ Windows
#     Access the neo4j console at http://<docker-machine-ip>:7474
 

RDBMS vs. Graph Database

RDBMS Graph-Datenbank
Tabellen Diagramme
Reihen Knoten
Spalten und Daten Eigenschaften und ihre Werte
Einschränkungen Beziehungen
Schließt sich an Traversal