我目前有一個關係數據庫,我計劃遷移到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自動
向後兼容性被高估。 –