陋室铭
永远也不要停下学习的脚步(大道至简至易)

posts - 2169,comments - 570,views - 413万

主键为整型数据库设计。

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

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

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

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

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

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

posted on   宏宇  阅读(225)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
历史上的今天:
2012-10-16 网易的企业免费邮箱和腾讯的企业邮箱
2007-10-16 面试题
2007-10-16 Dom4j 使用简介
2007-10-16 庄思浩和BEA公司
2006-10-16 自己想了一下为什么在ajax方法里找不到服务器控件
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示