0

Ich verwende Dise-Graph Version 5.x.Unique Indexing funktioniert nicht auf Dise-Grafik

Ich habe ein Schema mit Dse Studio erstellt, die Gremlin Abfrage verwendet.

Was ich versuche zu tun:

ich Index mein Graph wollen basierend auf dem Scheitel Eigenschaft namens ‚name‘

Hier ist, was ich bekomme, wenn ich schema.describe() Schema Image

Hier ist, was ich bekomme, wenn ich mache g.V() graph table

Wie Sie deutlich sehen können, habe ich Index meine Scheitelpunktbezeichnung type mit Eigenschaft name.

Aber wenn ich mehrere Scheitelpunkt (von Label type) mit demselben name einfügen, akzeptieren Sie es ohne Fehler.

Im Idealfall wegen der Indizierung sollte es einen Fehler beim Einfügen von Vertex mit der gleichen Eigenschaft `name 'zeigen.

Antwort

2

Indizierung in DSE Graph ist eine Leistungsoptimierung, keine referenzielle Integrität. Derzeit gibt es keinen Mechanismus, der das Erstellen eines neuen Index "ablehnt", wenn einer mit derselben Eigenschaft existiert. Wir haben diese Feature-Anfrage auf unserer Roadmap. In der Zwischenzeit ist es möglich, eine "Upsert" -Semantik mit DSE Graph zu erreichen, indem benutzerdefinierte IDs wie hier beschrieben verwendet werden. http://docs.datastax.com/en/latest-dse/datastax_enterprise/graph/using/createCustVertexId.html?hl=custom%2Cid

+0

Wann können wir diese Funktion erwarten? –

+0

Es gibt zu diesem Datum keine Zeitleiste an diese Funktion gebunden. Beachten Sie, dass Sie dieses Verhalten mit dem Werkzeug "Graph Loader" beim Ausführen von Massenladejobs erreichen können – jlacefie