數據庫主鍵性能對比: 測試表:id_int()、 初始化100w條數據的存儲過程: 數據插入過程能發現int自增的插入速度明顯高出另外兩個,uuid()函數調用肯定沒有自增快。不過相較於插入,我更關注查詢的性能對比 count: 長整形的效率明顯 ...
自增ID相對UUID來說,自增ID主鍵性能高於UUID,UUID維護成本高,單表的規模一般要保持在千萬級別,但有符號int最大可以支持到約 億,對於目前來說已經足夠了,不會達到 億上限。如果你覺得要加大預留量,可以把主鍵改為改為無符號int,上限為 億,這個預留量已經是非常的充足了。 ...
2019-06-09 17:30 0 910 推薦指數:
數據庫主鍵性能對比: 測試表:id_int()、 初始化100w條數據的存儲過程: 數據插入過程能發現int自增的插入速度明顯高出另外兩個,uuid()函數調用肯定沒有自增快。不過相較於插入,我更關注查詢的性能對比 count: 長整形的效率明顯 ...
偶然的機會,得知mysql主鍵的類型采用 varchar 存UUID 的查詢性能沒有int型做主鍵好。網上查詢大量資料,都是停留在理論上的,因此,自己寫了代碼進行實測,以下結果僅供參考,不具備權威性。 三個表的字段,除了主鍵ID 分別采用varchar,bigint 和自動增長bigint ...
數據庫:mysql5.5 表類型:InnoDB 數據量:100W條 第一種情況: 主鍵采用uuid 32位。 運行查詢語句1:SELECT COUNT(id) FROM test_varchar; 運行查詢語句2:SELECT * FROM test_varchar ...
知其然,知其所以然。在看到生成UUID的代碼,后帶給我的百度結合自己的經驗再寫下來的區別 一.UUID做主鍵: 優點: 缺點: 二.int主鍵: 優點: 缺點: ...
修改結構,將主鍵UUID改為主鍵自增長 --創建備份表結構 -- 插入備份數據 -- 刪除原表數據 -- 修改主鍵類型,將varchar改為bigInt,並設置為自增長 -- 將備份數據出主鍵外的所有數據插入修改后的表 ...
order by ... cast(sort as signed) 或 convert(sort,signed) (sort為待轉化字段) ...
其實針對使用自增長還是UUID,大家討論最多的就是速度和存儲空間,這里我加入了安全性和分布式,具體對比如下: 使用自增長做主鍵的優點:1、很小的數據存儲空間2、性能最好3、容易記憶使用自增長做主鍵的缺點:1、如果存在大量的數據,可能會超出自增長的取值范圍2、很難(並不是不能)處理 ...
用uuid生成20位的主鍵 另一種方法: 因為數據庫中有字母 需要排序的時候去除字母,重新取最大值,然后加1算作新的主鍵 或者 使用MySQL函數CAST/CONVERT: mysql為我們提供了兩個類型轉換函數:CAST和CONVERT ...