gpt4 book ai didi

neo4j - 为什么neo4j 中的节点和关系有这个容量限制?

转载 作者:行者123 更新时间:2023-12-04 00:58:53 24 4
gpt4 key购买 nike

我想知道为什么 neo4j 对节点和关系有容量限制。节点和关系的限制是 2^35 1这比“正常”的 2^32 整数“小”一点。常见的 SQL 数据库,例如 mysql 将主键存储为 int(2^32) 或 bigint(2^64) 2 .你能解释一下这个决定的好处吗?在我看来,这是选择数据库时的关键决策点。

最佳答案

这是人为的限制。他们将在不久的将来将其删除,尽管我还没有听到任何正式的预计到达时间。

通常情况下,在实际达到此限制之前,您会在单台机器上遇到硬件限制。

当前的选项是手动将图形分片到不同的机器。对于某些用例并不理想,但它适用于其他情况。将来,他们将有一种方法可以自动对数据进行分片——也没有 ETA。

更新:
我对 neo4j 存储内部结构有了更多了解。限制之所以如此,是因为 id 号作为指针存储在磁盘上的多个位置(节点记录、关系记录等)。要将其增加 2 的另一个幂,他们需要为每个节点增加 1 个字节,每个关系增加 1 个字节——它目前已尽可能地打包,而无需在磁盘上使用更多字节。在这篇很棒的博文中了解更多信息:
http://digitalstain.blogspot.com/2010/10/neo4j-internals-file-storage.html

更新 2:
我听说在 2.1 中,他们会将这些限制增加到比目前高出另一个数量级。

关于neo4j - 为什么neo4j 中的节点和关系有这个容量限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12971786/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com