Datenmenge pro Knoten in Neo4j


14

Ich muss erhebliche Datenmengen pro Knoten in Neo4j speichern. Die Daten sind Unicode-Textblöcke. Tatsächlich wird nicht jeder Knoten große Stücke haben, aber viele von ihnen.

Ich habe die Dokumentation durchgeblättert, aber keinen Hinweis auf die Knotengröße gefunden - die Datenmenge, die ein einzelner Knoten enthalten kann.

Hat jemand eine Idee?


Wie groß sind deine Klumpen im Allgemeinen? Sie sollten sicherstellen, dass Sie eine geeignete Zeichenfolgenblockgröße finden, um die Anzahl der Zeichenfolgenblöcke im Speicher auf einem vernünftigen Niveau zu halten und nicht zu viel Platz in nur halb gefüllten Blöcken zu verschwenden. Wie werden die Daten verwendet? Gerade gerendert oder auch anders abgefragt / verarbeitet? Wenn Sie brauchen Platz sparend zu, Kompression + Speicherung als Byte - Array kann eine Option sein.
Michael Hunger

Antworten:


13

Letztendlich hängt es von der Architektur Ihrer Maschine ab.


(Hintergrund) Knoten können Daten ausschließlich in ihren Eigenschaften speichern. Ihre Eigenschaften werden mithilfe eines Schlüsselwertspeichers gespeichert. (per hier )

Der Wert in jeder Eigenschaft ist auf Java-Grundelemente (ints, floats usw.), Zeichenfolgen und Arrays von Grundelementen / Zeichenfolgen beschränkt.

Daher ist die maximale Datenmenge, die eine bestimmte Eigenschaft enthalten kann, auf die maximale Größe für eine Zeichenfolge oder die maximale Größe für ein Array von Zeichenfolgen (dh pro Knoten ) beschränkt. Dieses Limit (für 32-Bit-Computer) beträgt 4 GB. (Beachten Sie, dass dies auf 2-3 GB beschränkt sein kann .)

(Außerdem gab es zuvor einen Fehler, der die Zeichenfolgengröße auf 1 MB beschränkte . Ich gehe davon aus, dass dies behoben ist.)

Dies wirft natürlich die Frage auf, ob mehrere Eigenschaften mehr als 4 GB pro Knoten speichern können. Da es sich bei der Eigenschaftsliste im Wesentlichen um einen Schlüsselwertspeicher handelt, wird davon ausgegangen, dass die maximale Größe durch den Speicherplatz und die Schlüsselauswahl begrenzt wird. Ich kann jedoch nichts finden, was dies unterstützen oder leugnen könnte.


Das beantwortet Ihre Frage nicht definitiv , aber soweit ich weiß , sollten Sie in der Lage sein, große Datenmengen pro Knoten zu speichern (bis zur Speicherkapazität).

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.