我想知道为什么neo4j在节点和关系上有容量限制.节点和关系的限制是2 ^ 35 1,这是"正常"2 ^ 32整数的"小"位.常见的SQL数据库,例如mysql,主键存储为int(2 ^ 32)或bigint(2 ^ 64)2.你能解释一下这个决定的好处吗?在我看来,这是选择数据库时的关键决策点.
Eve*_*man 12
这是一个人为限制.他们将在不久的将来将其删除,尽管我没有听过任何正式的ETA.
通常情况下,在实际达到此限制之前,您会在单个计算机上遇到硬件限制.
当前选项是手动将图形分片到不同的计算机.某些用例并不理想,但在其他情况下也适用.在未来,他们将有一种方法自动分片数据 - 也没有ETA.
更新:我已经了解了有关neo4j存储内部的更多信息.限制是它们的确切原因,是因为id号作为指针存储在磁盘上的几个地方(节点记录,关系记录等).为了增加2的另一个幂,它们需要每个节点增加1个字节,每个关系增加1个字节 - 它当前被打包,无需在磁盘上使用更多字节.在这篇精彩的博客文章中了解更多信息:http: //digitalstain.blogspot.com/2010/10/neo4j-internals-file-storage.html
更新2:
我听说在2.1中它们会将这些限制增加到比现在高出一个数量级.
| 归档时间: |
|
| 查看次数: |
3897 次 |
| 最近记录: |