优点:
1.自增,趋势自增,可作为聚集索引,提升查询效率
2.节省磁盘空间。500W数据,UUID占5.4G,自增ID占2.5G.
3.查询,写入效率高:查询略优。写入效率自增ID是UUID的四倍。
缺点:
1.导入旧数据时,可能会ID重复,导致导入失败。
2.分布式架构,多个Mysql实例可能会导致ID重复。
总结:
1.单实例,单节点,由于InnoDB的特性,自增ID效率大于UUID.
2.20个节点一下小型分布式架构:为了实现快速部署,主键不重复,可以采用UUID
3.20到200个节点:可以采用自增ID+步长的较快速方案。
4.200个以上节点的分布式架构:可以采用twitter的雪花算法全局自增ID