数据类型优化
创始人
2024-04-08 21:07:06

schema与数据类型优化

数据类型优化原则

最小数据类型

尽量使用可以正确存储数据的最小数据类型,更小的数据类型通常更快,因为它们占用更少的磁盘、内存和CPU缓存。

更简单的数据类型

简单数据类型的操作通常需要更少的CPU周期

1.整型字符操作代价更低,因为字符集和校对规则是字符比较比整型比较更复杂

2.使用MySQL自建类型而不是字符串来存储日期和时间

3.用整型存储IP地址,用INET_ATON()和INET_NTOA()函数在这两种表示方法之间转换,select inet_aton(‘1.1.1.1’),select inet_ntoa(16843009)

避免default null 定义

官方说MyISAM,InnoDB,MEMORY可以为NULL字段加上索引,经测试索引生效,not null 比 null性能稍好;但是由于null对优化器影响较大,所以应该尽量避免设计成default null

字段类型对比

整型类型

类型存储占用长度
TINYINT8
SMALLINT16
MEDIUMINT24
INT32
BIGINT64

CHAR 和 VARCHAR对比

最大长度末尾去空格场景
VARCHAR没有限制false1、存储长度波动较大的数据2、字符串很少更新的场景3、适合保存多字节字符
CHAR255true1、存储长度波动不大的数据2、存储短字符串、经常更新的字符串

BLOB和TEXT类型

BLOBTEXT
存储方式二进制字符串
应用图像、音视频text类型文档、小说
是否外部存储值太大时值太大时

datetime和timestamp和date对比

datetimestampdatetime
占用空间3字节4字节8字节
精确日期毫秒

字符集选择

1.纯拉丁字符能表示的内容,没必要选择 latin1 之外的其他字符编码,因为这会节省大量的存储空间。

2.如果我们可以确定不需要存放多种语言,就没必要非得使用UTF8或者其他UNICODE字符类型,这回造成大量的存储空间浪费。

3.MySQL的数据类型可以精确到字段,所以当我们需要大型数据库中存放多字节数据的时候,可以通过对不同表不同字段使用不同的数据类型来较大程度减小数据存储量,进而降低 IO 操作次数并提高缓存命中率。

存储引擎选择

在这里插入图片描述

相关内容

热门资讯

全球资本版图重构:一场私募的“... ◎记者 马嘉悦 “中东、新加坡、欧洲……近一年我频繁飞国外,因为那里有大量配置中国资产的需求。”一位...
行稳致远开新局|能级跨越!看中... 编者按:乘势而上,阔步向前。2026年是“十五五”开局之年,是全面建设社会主义现代化国家新征程的关键...
清朝最无能的皇帝是谁?纸醉金迷... 夫以铜为镜,可以正衣冠;以史为镜,可以知兴替;以人为镜,可以明得失。那我们的主人公咸丰究竟有怎样的故...
清朝最无能的皇帝是谁?纸醉金迷... 夫以铜为镜,可以正衣冠;以史为镜,可以知兴替;以人为镜,可以明得失。那我们的主人公咸丰究竟有怎样的故...
清朝最无能的皇帝是谁?纸醉金迷... 夫以铜为镜,可以正衣冠;以史为镜,可以知兴替;以人为镜,可以明得失。那我们的主人公咸丰究竟有怎样的故...