我目前有一个关系数据库,我计划迁移到neo4j。我们有apis公开了把id作为输入到像/ entity/{id}/relatedEntities等这些URL的输入。这些Ids是db生成的自动增量Ids。这些API的多个客户端可能已经缓存了Ids,以便保持我需要继续使用这些ID的向后兼容性。我的问题是在我开始添加新实体时迁移到neo4j后,如何在集群环境中特别继续生成这些id(我打算为neo4j拥有多个JVM和主/客户机节点)?如何使用neo4j获得自动增量
1
A
回答
1
从Neo4j 3.0.6开始,自动生成的序列不是功能集的一部分。
您可能能够定义具有指定序列标签的属性的序列节点,当您需要新数字时锁定该节点,然后增加并生成和解锁后,虽然这可能很尴尬。如果它是一个写操作,那么它应该在集群环境中工作,因为写操作应该在集群的主节点上执行,但其他具有该区域更多经验的人员可以确认或否认这一点。
一种替代方法是使用UUID而不是序列。您需要将它们作为字符串而不是整数来处理,并且您将失去基于生成的ID进行比较的能力,但APOC程序支持生成UUID,并且在数学上它们将是唯一的,并且不会有与以前使用的以前的数字ID相冲突。
相关问题
- 1. 如何禁用neo4j的自动增量标识符(id)?
- 2. MySQL的获得不带自动增量
- 3. 使用py2neo(Neo4j)自动增加属性?
- 4. 如何使自动增量列非自动增量?
- 5. 使用insert_id获取自动增量ID
- 6. 如何使用用户功能在neo4j中实现自动增量
- 7. 使用Volley插入后无法获得自动增量
- 8. 如何在mysql表中获得下一个自动增量ID?
- 9. 如何获得自动增量列MVVM的下一个值
- 10. 如何在flask-sqlalchemy orm模式下获得自动增量ID
- 11. 如何获得由ScalaQuery插入的自动增量ID
- 12. 在Neo4j中自动递增
- 13. 如何自动增量ID
- 14. 如何自动增量(IDENTITY)
- 15. 如何使数字自动增量?
- 16. 如何在批量更新查询(Java,MySQL)中获得自动增量值?
- 17. 404获得增量
- 18. 如何使用jQuery获得带增量id的跨文本?
- 19. 无法获得自动递增的ID
- 20. 为什么我会得到使用自动增量
- 21. neo4j自动增加多个查询
- 22. Neo4j中的自动递增属性
- 23. 如何在sqlite中获得所有数据的id自动增量?
- 24. 如何获得刚刚在PHP中输入的行的自动增量主键?
- 25. MYSQL如何获得下一个自动增量时选择插入
- 26. SQL - 获得最近一次插入与自动增量ID
- 27. 通过sqlite3和mysql可靠地获得自动增量值
- 28. 禁用datanucleus自动增量?
- 29. 引用自动增量列?
- 30. 如何获得videojs自动
向后兼容性被高估。 –