RANDOM 生成的ID是否是有序递增的?

【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】6.5.5
【复现路径】单表中在主键上设置RANDOM生成的ID是否是有序递增的

是自增的 不是有序递增

会,一次插入多行时

AUTO_RANDOM 列值的具体结构如下:

总位数 符号位 保留位 分片位 自增位
64 bits 0/1 bit (64-R) bits S bits (R-1-S) bits
  • 符号位的长度由该列是否存在 UNSIGNED 属性决定:存在则为 0,否则为 1
  • 保留位的长度为 64-R,保留位的内容始终为 0
  • 分片位的内容通过计算当前事务的开始时间的哈希值而得。要使用不同的分片位数量(例如 10),可以在建表时指定 AUTO_RANDOM(10)
  • 自增位的值保存在存储引擎中,按顺序分配,每次分配完值后会自增 1。自增位保证了 AUTO_RANDOM 列值全局唯一。

随机自增的

此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。