Modèle de données OpenCypher - Amazon Neptune

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.

Modèle de données OpenCypher

Le moteur OpenCrypher de Neptune repose sur le même modèle de graphe de propriétés que Gremlin. En particulier :

  • Chaque nœud possède une ou plusieurs étiquettes. Si vous insérez un nœud sans étiquette, une étiquette par défaut nomméevertexest joint. Si vous essayez de supprimer toutes les étiquettes d'un nœud, une erreur est renvoyée.

  • Une relation est une entité qui possède exactement un type de relation et qui forme une connexion unidirectionnelle entre deux nœuds (c'est-à-direà partir del'un des nœudspourl'autre).

  • Les nœuds et les relations peuvent avoir des propriétés, mais ce n'est pas obligatoire. Neptune prend en charge les nœuds et les relations sans propriétés.

  • Neptune ne prend pas en charge les métapropriétés, qui ne sont pas non plus incluses dans la spécification OpenCypher.

  • Les propriétés de votre graphique peuvent avoir plusieurs valeurs si elles ont été créées à l'aide de Gremlin. En d'autres termes, un nœud ou une propriété de relation peut avoir un ensemble de valeurs différentes au lieu d'une seule. Neptune a étendu la sémantique d'OpenCypher pour gérer les propriétés à valeurs multiples de manière élégante.

Les types de données pris en charge sont décrits dansFormat de données OpenCrypher. Cependant, nous ne recommandons pas d'insérerArrayvaleurs de propriétés dans un graphe OpenCypher à l'heure actuelle. Bien qu'il soit possible d'insérer la valeur d'une propriété de tableau à l'aide du chargeur en bloc, la version actuelle de Neptune OpenCypher la traite comme un ensemble de propriétés à valeurs multiples plutôt que comme une valeur de liste unique.

Vous trouverez ci-dessous la liste des types de données pris en charge dans cette version :

  • Bool

  • Byte

  • Short

  • Int

  • Long

  • Float(Inclut plus et moins Infinity et NaN, mais pas INF)

  • Double(Inclut plus et moins Infinity et NaN, mais pas INF)

  • DateTime

  • String