0

Amazon Neptune 或任何图形数据库中的组计数查询是否会因大数据而失败?

我的意思是,如果计数超出计数数据类型的限制,是否会出现溢出?

4

1 回答 1

1

简短的回答

Gremlin 查询语言语义(由 Tinkerpop 代码定义)将 count() 函数的输出定义为 64 位长。所以,是的,count 不能超过 long 的范围。

长答案

话虽如此,让我们尝试计算您需要插入数据库以达到该阈值的数据量。数据库中的每个实体(顶点/边/属性)都包含一个与之关联的唯一 ID。让我们假设每个实体的存储只包含标识符。此外,让我们假设标识符的数据类型是最有效的,即 long(而不是使用比 long 更大空间的 String)。

为了达到计数限制,数据库需要存储至少 2^64 个实体,每个实体具有唯一标识符,即至少 ((2^64)*64) 位数据,即在非常保守的情况下大于 1000 PetaBytes 的数据估计。

关键是,在达到计数限制之前,您需要存储大量数据。如果您使用如此大量的数据进行操作,那么数据库可能不是适合您的存储解决方案。

于 2018-08-02T08:24:40.727 回答