调整步长支持跨数据库的ID惟一性弊端

以前咱们老是讨论怎么获取惟一性ID,在数据库分表时,有一种是经过调整字段或者数据库的sequence的步长来确保跨数据库的ID的惟一性,这样存在不少限制,而且强依赖类型,只是存在这样的方式,因此想看一下,而后存在的弊端是怎么样的。数据库

设计的方式以下:每一个服务的起始ID是不一样的,步长是固定递增的,这样虽然能够用数据库生成惟一ID,实现起来也比较简单,说不定还能解决性能目标。运维

可是这样的实现存在问题:性能

1.服务节点固定,步长固定,虽然能够能够先预设必定的步长,以便后续的水平拓展,可是若是真的超过了这个n,那么水平就难以拓展。设计

2.过度依赖数据库。blog

3.分散管理,增长运维成本,增长查询检索的复杂度。im

4.虽然能够全局惟一,可是要作到全局粗略有序就要额外的控制成本。数据

相关文章
相关标签/搜索