数据中不要用无序GUID做主键或者聚集索引

跟着阿笨一起玩NET

共 380字,需浏览 1分钟

 ·

2022-03-05 20:23


GUID的最重要问题是默认情况下它不是连续的. 当你将GUID用作主键并将其设置为表的聚集索引(默认设置)时,这会在插入时带来严重的性能问题(因为插入新记录可能需要对现有记录进行重新排序).

所以,永远不要为你的实体使用 Guid.NewGuid() 创建ID!.


无序GUID作为主键以及作为聚集索引所带来的问题包括:

  1. 空间的浪费以及由此带来的读写效率的下降。 

  2. 更主要的,存储的碎片化(fragmentation)以及由此带来的读写效率严重。


所以,尽量避免用GUID(无序或有序)做主键,不要用无序GUID做聚集索引



浏览 10
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报