簡體   English   中英

Java中數據存儲區的自動增量實體ID

[英]Auto increment entity id for datastore in java

我知道數據存儲區不支持自動增量。
但是,在Java中,如何創建唯一的ID並大於先前的ID是有可能的。 我知道Java支持UUID這是唯一的,但沒有任何順序。

為什么需要自動遞增,是因為如果我以某種方式管理自動遞增,我可以按順序獲得結果。 我不需要應用任何額外的過濾器即可對數據存儲區結果進行排序。 我在某處讀取了默認情況下數據存儲區返回ASC順序的信息。 如果我按順序創建唯一的ID,則可以按訂單格式獲取結果。

我正在使用objectify。

有什么建議嗎?

在分布式系統中,這是一個難題。 訂購需要精確到什么程度? 如果需要完全單調,則需要一個發布ID的單節點仲裁器。 否則,您將進入復雜且緩慢的分布式共識算法領域。

數據存儲區是一個大規模分布式系統,並非針對此特定用例而設計。 如果您可以忍受每秒發布幾個ID,那么您可以將當前值存儲在實體中並在事務中更新它……但是您不能超過該吞吐量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM