Preciso armazenar quantidades substanciais de dados por nó no Neo4j. Os dados são pedaços de texto Unicode. Na verdade, nem todos os nós terão grandes pedaços, mas muitos terão.
Percorri a documentação, mas não encontrei nenhuma menção ao tamanho do nó - a quantidade de dados que um único nó pode conter.
Alguém tem alguma ideia?
Respostas:
Por fim, depende da arquitetura que sua máquina possui.
(em segundo plano) Os nós podem armazenar apenas dados em suas propriedades. Suas propriedades são armazenadas usando um armazenamento de valores-chave. (por aqui )
O valor em cada propriedade é limitado a primitivas Java (entradas, flutuadores, etc.), cadeias e matrizes de primitivas / cadeias.
Portanto, a quantidade máxima de dados que uma determinada propriedade pode conter seria limitada ao tamanho máximo de uma string ou ao tamanho máximo de uma matriz de strings (que é por nó ). Esse limite (para máquinas de 32 bits) é de 4 GB. (Observe que isso pode estar limitado a 2-3 GB .)
(Além disso, tendo dito isso, havia um erro anteriormente que limitava o tamanho da string a 1 MB . Espero que isso seja resolvido.)
Obviamente, isso levanta a questão de saber se várias propriedades podem armazenar mais de 4 GB por nó. Como a lista de propriedades é essencialmente um armazenamento de valores-chave, seria de esperar que o tamanho máximo fosse limitado pelo espaço em disco e pela seleção de chaves. Não consigo encontrar nada para apoiar ou negar isso, no entanto.
Isso não responde definitivamente à sua pergunta, mas, pelo que entendi, você deve poder armazenar grandes quantidades de dados por nó (até a capacidade de espaço em disco).
fonte