Neo4j:为节点使用数字索引

时间:2017-03-25 23:10:34

标签: python neo4j py2neo

这是py2neo 1.6。 我的问题是如何为每个想法生成unique_identifier(请参阅注释行),以便为图像提供不同的文件名。 目前我们正在使用python的uuid。 我想知道neo4j中是否有一些实用程序可以在将节点添加到索引时将不同的数字关联到每个节点,以便我们可以将此数字用作我们的unique_identifier

AddEventView

1 个答案:

答案 0 :(得分:1)

Neo4j节点具有id,它们是整数,但是如果节点被销毁并重新创建,则可以重用整数。 id(n)是节点 n 的ID。 UUID有问题吗?当您在扩展时跨多个服务器进行多线程或分发计算项目时,整数解决方案可能会成为问题。因此,除非UUID解决方案出现问题,否则我只会坚持下去。

尽管难以阅读,并且可能需要稍微多一点的存储空间,但UUID比尝试使用整数强制执行唯一性(一般而言)有许多优点。我鼓励您在Wikipedia上了解UUID的性质。

当尝试跨独立系统扩展时,整数唯一性存在许多缺陷(出于容错和性能原因)。如果您可以开始使用UUID,那么您可以长期使用您的解决方案,并且可以减少更少的麻烦。

FWIW,如果你最终在PostgreSQL中存储UUID,请务必利用'uuid'数据类型。它将使存储和索引这些值几乎与普通整数一样有效。 (很难区分。)