【讨论题】你是如何实现MyCAT集群中的全局唯一ID的?
题干:
在数据存存在单独数据库的情况下,我们可以使用MySQL表的自增ID来做为表的主键,也就是数据的唯一标识来使用,那么对数据时行水平分割后,怎么来保证这个ID要所有分片中都是唯一的呢?
关键提炼:
掌握生成数据库全局唯一ID的方法,在本课程中学习过可以使用MyCAT来生成全局唯一ID,除此之外,我们还可以使用其它的很多方式来生成这个ID,比如下面的方法:
1).使用Redis来生成全局唯一ID。
2).使用UUID来做为合局唯一ID,但是由于UUID并不适合做为Innodb表的主键来使用,所以并不推荐这样的方式。
3).使用独立的数据库来生成全局唯一ID。