首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >BIGINT签名与未签名

BIGINT签名与未签名
EN

Stack Overflow用户
提问于 2017-11-30 06:37:07
回答 1查看 6.1K关注 0票数 2

我有生产环境,6GB的MySQL InnoDB表和一些BIGINT SIGNED列,但是存储的值都大于0,以后没有机会填充负值。如果我将它们全部或部分转换为UNSIGNED,性能会有明显的提高吗?在转换过程中,桌子会被压碎吗?

EN

回答 1

Stack Overflow用户

发布于 2017-11-30 07:30:31

这一点对你真的很重要吗?性能通常归结为您正在操作的基本数据类型(例如,VARCHARINT),而不是签名位。正如VARCHAR(20)VARCHAR(21)的性能基本相同一样,我相信您很难在BIGINTUNSIGNED BIGINT之间找到一个可测量的性能差异。

因为BIGINT可以存储巨大的价值,所以你不太可能需要最后一点。INT可以溢出21亿,一些应用程序预计会超过这个数字。有超过20亿的推特,超过20亿的Facebook帖子等等,但大多数应用程序很少会看到甚至超过这一点。

不要担心什么是你不能衡量的问题。如果你觉得有问题,就测量一下。如果你的测量结果不确定,你可以用另一种方法再试一次,或者接受这样一个事实:也许你的直觉是错误的。

这些天计算机速度惊人,有些系统可以将数据库转储到内存中,并在5秒内扫描。如果你关心每一个纳秒,首先要开始的是低挂果,比如你的索引策略或者你选择的文件系统,你的MySQL配置。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47567287

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档