Allgemeine Informationen zur Migration von Neo4j zu Neptune - Amazon Neptune

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Allgemeine Informationen zur Migration von Neo4j zu Neptune

Mit Neptune-Unterstützung für die openCypher Abfragesprache können Sie die meisten Neo4j-Workloads, die das Bolt-Protokoll verwenden, oder nach Neptune verschieben. HTTPS Es openCypher handelt sich jedoch um eine Open-Source-Spezifikation, die die meisten, aber nicht alle Funktionen enthält, die von anderen Datenbanken wie Neo4j unterstützt werden.

Obwohl Neptune in vielerlei Hinsicht kompatibel ist, stellt es keinen direkten Ersatz für Neo4j dar. Neptune ist ein vollständig verwalteter Graphdatenbank-Service mit Enterprise-Features wie hohe Verfügbarkeit und hohe Datenbeständigkeit, der sich architektonisch von Neo4j unterscheidet. Neptune ist Instance-basiert und verfügt über eine einzige primäre Writer-Instance und bis zu 15 Lesereplikat-Instances, mit denen Sie die Lesekapazität horizontal skalieren können. Mit Neptune Serverless können Sie Ihre Datenverarbeitungskapazität je nach Abfragevolumen automatisch nach oben oder unten skalieren. Dies ist unabhängig vom Neptune-Speicher, der automatisch skaliert wird, wenn Sie Daten hinzufügen.

Neptune unterstützt die openCypherOpen-Source-Standardspezifikation, Version 9. Wir bei glauben AWS, dass Open Source für alle gut ist, und wir setzen uns dafür ein, sowohl unseren Kunden den Wert von Open Source näherzubringen als auch Open-Source-Communities die operative Exzellenz AWS zu bieten.

Viele Anwendungen, die auf Neo4j laufen, verwenden jedoch auch proprietäre Features, die nicht als Open-Source-Funktionen verfügbar sind und die Neptune nicht unterstützt. Neptune unterstützt beispielsweise keine APOC Prozeduren, einige Cypher-spezifische Klauseln und Funktionen undChar, oder Datentypen. Date Duration Neptune wandelt die fehlenden Datentypen automatisch in unterstützte Datentypen um.

Darüber hinaus unterstützt Neptune auch die Apache TinkerPop Gremlin-Abfragesprache für Eigenschaftsdiagramme (sowie SPARQL für Daten). openCypher RDF Gremlin kann mit openCypher demselben Eigenschaftsdiagramm zusammenarbeiten, und in vielen Fällen können Sie Gremlin verwenden, um Funktionen bereitzustellen, die nicht verfügbar sind. openCypher Im Folgenden finden Sie einen kurzen Vergleich der beiden Sprachen:

openCypher Gremlin

Style

Deklarativ

Unerlässlich

Syntax

Mustervergleich

Match p=(a)-[:route]->(d) WHERE a.code='ANC' RETURN p

Transversal-basiert

g.V().has('code', 'ANC'). out('route').path(). by(elementMap())

Benutzerfreundlichkeit

SQL-inspiriert, auch für Nicht-Programmierer lesbar

Steilere Lernkurve, ähnlich wie bei Programmiersprachen wie Java

Flexibilität

Niedrig

Hoch

Unterstützung für Abfragen

Zeichenfolgenbasierte Abfragen

Zeichenfolgenbasierte Abfragen oder Inline-Code, der von Client-Bibliotheken unterstützt wird

Clients

HTTPSund Bolt

HTTPSund Websockets

Im Allgemeinen ist es nicht notwendig, Ihr Datenmodell zu ändern, um von Neo4j zu Neptune zu migrieren, da sowohl Neo4j als auch Neptune beschriftete Property Graph () -Daten unterstützen. LPG Neptune weist jedoch einige Architektur- und Datenmodellunterschiede auf, die Sie zur Leistungsoptimierung nutzen können. Beispielsweise:

Bitte wenden Sie sich an den AWS Support oder wenden Sie sich an Ihr AWS Account-Team, wenn Sie Fragen haben. Wir nutzen Ihr Feedback, um neue Features zu priorisieren, die Ihren Anforderungen entsprechen.