Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Informations générales sur la migration de Neo4j vers Neptune
Grâce à la prise en charge du langage de openCypher requête par Neptune, vous pouvez déplacer la plupart des charges de travail Neo4j qui utilisent le protocole Bolt ou vers Neptune. HTTPS Cependant, il openCypher s'agit d'une spécification open source qui contient la plupart des fonctionnalités prises en charge par d'autres bases de données telles que Neo4j, mais pas toutes.
Bien qu'il soit compatible à bien des égards, Neptune ne remplace pas directement Neo4j. Neptune est un service de base de données orientée graphe entièrement géré et doté de fonctionnalités d'entreprise telles que la haute disponibilité et la haute durabilité. Son architecture est différente de celle de Neo4j. Neptune repose sur une instance, avec une seule instance d'enregistreur principale et jusqu'à 15 instances de réplica en lecture qui vous permettent de mettre à l'échelle horizontalement la capacité de lecture. Avec Neptune sans serveur, vous pouvez automatiquement augmenter ou diminuer la capacité de calcul en fonction du volume de requêtes. Cela est indépendant du stockage Neptune, qui est mis à l'échelle automatiquement à mesure que vous ajoutez des données.
Neptune prend en charge la spécification openCypher standard open source, version 9
Cependant, de nombreuses applications exécutées sur Neo4j utilisent également des fonctionnalités propriétaires qui ne sont pas open source et que Neptune ne prend pas en charge. Par exemple, Neptune ne prend pas en charge APOC les procédures, certaines clauses et fonctions spécifiques à Cypher, ni les types de donnéesChar
. Date
Duration
Neptune convertit automatiquement les types de données manquants en types de données pris en charge.
Neptune prend également en openCypher charge le langage de requête Apache TinkerPop Gremlin
openCypher | Gremlin | |
---|---|---|
Style |
Déclaratif |
Impératif |
Syntaxe |
Mise en correspondance des modèles
|
Basé sur la traversée
|
Facilité d'utilisation |
SQL-inspiré, lisible par les non-programmeurs |
Courbe d'apprentissage plus abrupte, similaire à celle des langages de programmation tels que Java |
Flexibilité |
Faible | Élevé |
Prise en charge des requêtes |
Requêtes basées sur des chaînes |
Requêtes basées sur des chaînes ou code intégré pris en charge par les bibliothèques clientes |
Clients |
HTTPSet Bolt |
HTTPSet Websockets |
En général, il n'est pas nécessaire de modifier votre modèle de données pour migrer de Neo4j vers Neptune, car Neo4j et Neptune prennent en charge les données étiquetées property graph (). LPG Neptune présente toutefois certaines différences d'architecture et de modèle de données dont vous pouvez tirer parti pour optimiser les performances. Par exemple :
Neptune est traitée comme un IDs citoyen de premier ordre.
Neptune utilise AWS Identity and Access Management (IAM) des politiques pour sécuriser l'accès à vos données graphiques de manière flexible et granulaire.
Neptune propose plusieurs manières d'utiliser les blocs-notes Jupyter pour exécuter des requêtes et visualiser les résultats. Neptune fonctionne également avec des outils de visualisation tiers.
>Bien que Neptune n'ait aucun substitut à la bibliothèque Neo4j Graph Data Science (GDS), Neptune prend aujourd'hui en charge l'analyse graphique par le biais de diverses solutions. Par exemple, plusieurs exemples de blocs-notes
montrent comment tirer parti de l'intégration de Neptune avec les SDK Pandas dans AWS les environnements Python pour exécuter des analyses sur des données graphiques.
N'hésitez pas à contacter l'équipe chargée AWS de votre AWS compte ou à contacter l'équipe chargée de votre compte si vous avez des questions. Nous tenons compte de vos commentaires pour traiter en priorité les nouvelles fonctionnalités qui répondront à vos besoins.