主键为整型数据库设计

主键为整型数据库设计。

在最初传统数据库设计上,单表的主键一般都设计为自动增长的整型,数据库自己维护主键不重复,这种数据作为单库单表是没问题的。

但是随着数据规模越来越大,数据库的设计变成了分布式,负载,多库,分表,云数据,非关系型数据等等,主键的唯一性和数据的迁移性要求,主键是整型已经很难满足这种需求了,目前最常用的就是主键为guid型(全球唯一码)。

也就是主键在生成时是自满足的,他不需要关注其他主键,自己就可以保证自己是唯一的(有重复概率但可以不考虑)。

但是,主键为整型在设计上也不是完全要丢掉的,本身主键为整型是有自己的优势的,首先整型主键是有意义的,而不像guid型没有意义,然后整型数据存储数据很小,而且做统计分析时计算消耗会远小于guid类型。

那么如果使用整型作为主键,那么就需要有一个专门的程序生成主键,比如如果是多线程插入,那么应该是所有数据在插入时,需要把整型主键都分配好再插入,而不是每条数据插入后再决定。

或者可以在设计时同时加入guid类型和整型类型,这么设计还是比较好的。

原文地址:https://www.cnblogs.com/cuihongyu3503319/p/9797443.html