全局ID

数据在分片时,典型的是分库分表,就有一个全局ID生成的问题

1不能有单点故障。

2以时间为序,或者ID里包含时间。这样一是可以少一个索引,二是冷热数据容易分离。

3可以控制ShardingId。比如某一个用户的文章要放在同一个分片内,这样查询效率高,修改也容易。

4不要太长,最好64bit。使用long比较好操作,如果是96bit,那就要各种移位相当的不方便,还有可能有些组件不能支持这么大的ID。


全局ID的方案对比
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 概述 分布式系统中,很多时候需要使用全局唯一ID,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有...
    03b222cf1c46阅读 4,642评论 2 34
  • 1. 背景 分布式系统或者微服务架构基本都采用了分库分表的设计,全局唯一id生成的需求变得很迫切。传统的单体应用,...
    aoho阅读 11,719评论 0 7
  • Entrance 数据在分片时,典型的是分库分表,就有一个全局ID生成的问题。 单纯的生成全局ID并不是什么难题,...
    天下无敌强阅读 6,671评论 2 5
  • 一,题记 所有的业务系统,都有生成ID的需求,如订单id,商品id,文章ID等。这个ID会是数据库中的唯一主键,在...
    eonhu阅读 13,411评论 0 8
  • 一,题记 所有的业务系统,都有生成ID的需求,如订单id,商品id,文章ID等。这个ID会是数据库中的唯一主键,在...
    架构师小秘圈阅读 9,458评论 1 18