关于数据库主键方案的研究(雪花算法)

一、前言

   目前主流的三种数据库主键,分别是:

     数据库自增id字段:适合单表单库时应用。

    UUID:UUID是由开放软件基金会(OSF)定义的,UUID是一个由4个连字号(-)将32个字节长的字符串分隔后生成的字符串,总共36个字节长。比如:550e8400-e29b-41d4-a716-446655440000。其中GUID是微软对UUID这个标准的实现。UUID还有其它各种实现,不止GUID一种。

    

   snowflake算法(即雪花算法):

二、各个方案比较

(1)数据库本身的自增id(通常可以是int或者long类型):int支持-2^31——2^31-1,即-2147483648——2147483647,即21亿条数据库记录,对于一般系统足够用了。对于超大型分布系统,可以用long类型,它支持-9223372036854774808~9223372036854774807),占用8个字节(-2的63次方到2的63次方-1)。

三、最终选型:雪花算法

四、实战中的坑

你可能感兴趣的:(关于数据库主键方案的研究(雪花算法))