首页
/
每日頭條
/
生活
/
不重複的id算法
不重複的id算法
更新时间:2026-06-27 07:29:59

生成唯一 ID 的可能方法?

不重複的id算法(生成唯一ID的可能方法)1

創建唯一 id 的不同方法:

自增ID

與 GUID 相比,自增Id 往往占用更少的空間更容易索引。它是一個很好的聚集索引,随着新記錄的有序保存,碎片更少,這更容易連接表。如果我們使用數據庫提供的自動生成的增量 id,那麼查詢和查找數據會變得更快,因為是有序的。但是這種方法可能不是最适合分布式系統,因為 2 個數據庫可以生成相同的 id,存在ID碰撞。

GUID

GUID 的唯一性取決于用于生成它的算法。

GUID 會重複嗎?

GUID 是一個128 位整數(16 個字節),可以在需要唯一标識符的所有計算機和網絡中使用。

GUID 隻是微軟對 UUID 的實現,UUID/GUID 的問題是尺寸比較大,所以索引不好。因此查詢性能會受到影響。

MongoDB 的ObjectId

Objectid 的長度為 12 字節,由以下部分組成:

  • 以秒為單位的 4 字節的時間戳,
  • 一個 3 字節的機器标識符,
  • 一個 2 字節的進程 ID,以及
  • 一個 3 字節的計數器,從一個随機值開始。

與類似 sql 的數據庫的自增ID相比,它的長度仍然更長。

數據庫唯一ID

這種方法使用一個額外的數據庫,其主要目的是創建唯一的 id,調用集中數據庫創建一個唯一的id。這種方法的問題是我們需要一個額外的數據庫,并且性能受限數據庫的性能,

Twitter雪花

Snowflake 是一種算法服務,可大規模生成唯一 ID 号,并提供一些簡單的保證。ID 為 64 位長。

id 由以下部分組成:

  • 時間 — 41 位
  • 配置的機器 id — 10 位 — 最多 1024 台機器
  • 序列号 — 12 位

ID 緊湊而簡短(與 GUID 和 ObjectId 相比),且有序的。

補充:也可以了解百度 美團的分布式ID算法實現,大同小異;同時也可以基于雪花自定義擴展等

結論

在需要唯一ID的情況下,首先要弄清楚的是想要的數據庫架構類型——分布式/分片或單一數據庫。

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
詠柳這首詩的詩意是什麼
詠柳這首詩的詩意是什麼
詠柳這首詩的詩意是什麼?《詠柳》詩的意思:高高的柳樹長滿了翠綠的新葉,輕柔的柳枝垂下來,就像萬條輕輕飄動的綠色絲帶這細細的嫩葉是誰的巧手裁剪出來的呢?原來是那二月裡溫暖的春風,它就像一把靈巧的剪刀,下面我們就來聊聊關于詠柳這首詩的詩意是什麼...
2026-06-27
暗度陳倉是什麼生肖
暗度陳倉是什麼生肖
暗度陳倉是什麼生肖?“暗度陳倉”指的是老鼠“暗度陳倉”的意思是:正面迷惑敵人,但從暗中進行突然襲擊,給他人措手不及的緻命打擊;現常用來形容暗中進行的活動而十二生肖中,隻有老鼠喜歡在暗中進行活動,所以“暗度陳倉”指的是老鼠另外,暗度陳倉出自《...
2026-06-27
過年家裡放什麼花比較好
過年家裡放什麼花比較好
過年家裡放什麼花比較好?金桔金桔盆栽是非常适合在家中擺放的裝飾植物金桔金黃色的果實,可以烘托出一種喜慶、高雅的氛圍金燦燦的果實,寓意金玉滿堂,象征着财富其次,金桔對于人的健康無害,也比較耐陰,在冬季的時候放在室内可以帶給人溫暖的感覺,今天小...
2026-06-27
班得瑞十大震撼純音樂
班得瑞十大震撼純音樂
奇葩電台|關注耳朵裡的小情緒在奇葩電台你想要的背景音樂全都有!每周都有小驚喜哦~在21世紀來臨之前在廣袤的中國大地上在國内專門的罐頭音樂工作室尚未出現和普及之時我大天朝曾經面向世界音樂圈取經于是乎造就了不少世界名曲與你我的别樣回憶沒錯今天的...
2026-06-27
承德旅遊一日遊最佳路線
承德旅遊一日遊最佳路線
#奮進新時代魅力新承德##這麼近那麼美周末到河北##頭條帶你樂享河北##河北文旅看圖識景#承德是全國首批24個曆史文化名城之一,素有“紫塞明珠”之美譽,擁有多樣的曆史建築和豐富的文化資源,曆史文化底蘊豐厚。雖然承德的秋來的早,但美景走的晚。...
2026-06-27
Copyright 2023-2026 - www.tftnews.com All Rights Reserved