数据库主键选择的一些方案比较

数据库中每一条记录都需要有一个唯一的标识,一般来说有两种选择方式:

  • 使用业务字段做主键
    很多情况下很难找到一个业务字段是唯一标识
    业务字段长度有可能改变

  • 使用自动生成的唯一ID作为主键
    • 唯一性,生成就不会变更,可以随意引用
    • 单库单表场景下:
      • 自增字段作为ID
    • 分库分表场景下:
      - UUID
      一般用来生成Request ID来标记单次请求
      生成的ID最好具有单调递增性,也就是有序,而UUID不具备这个特点,ID有可能成为排序字段
      ID有序也会提升数据的写入性能(B+树存储索引,顺序写入不需要寻道)
      不具备业务含义,UUID无意义
      32个16进制数字组成,比较耗费空间
      - 搭建发号服务来生成ID

猜你喜欢

转载自www.cnblogs.com/yeni/p/11652868.html
今日推荐