Preciso armazenar quantidades substanciais de dados por nó no Neo4j. Os dados são blocos de texto Unicode. Na verdade, nem todos os nós terão grandes pedaços, mas muitos deles terão.
Eu vasculhei 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?
Em última análise, depende da arquitetura que sua máquina possui.
(plano de fundo) Os nós podem armazenar dados apenas em suas propriedades. Suas propriedades são armazenadas usando um armazenamento de valor-chave. (por aqui )
O valor em cada propriedade é limitado a primitivos Java (ints, floats, etc.), strings e arrays de primitivos/strings.
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 (isso é por node ). Esse limite (para máquinas de 32 bits) é de 4 GB. (Observe que isso pode ser limitado a 2-3 GB .)
(Além disso, tendo dito isso, havia um bug 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 chave-valor, seria de esperar que o tamanho máximo fosse limitado pelo espaço em disco e pela seleção de chave. 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 ser capaz de armazenar grandes quantidades de dados por nó (até a capacidade do espaço em disco).