schema与数据类型优化

1、选择优化的数据类型

整数类型,实数类型(带有小数部分的数字),字符串类型,日期和时间类型,位数据类型

1.1、varchar和char

char类型是定长的,会根据定义的字符串分配定长的空间,多余的空间用空格去填充。适合存储短字符串和经常需要变更的字符串。存储数据会把字符串末尾带有的空格去掉,检索时字符串就丢掉了末尾的空格。

varchar类型是可变长的,只分配实际需要的存储空间,节省存储空间。另外需要一两个额外的字节去存储字符串的长度。适合存储更新少,列的最大长度 远大于平均长度的字符串。

 

2、范式和反范式

2.1、三大范式

第一范式:确保每列数据的原子性,即表中所有字段都是不可分解的原子值。

                 第一范式的遵循需要根据实际需求来定,如对于地址这个字段,需要经常访问地址中的城市部分,那么就需要

                  把地址拆分成具有城市字段等部分进行存储。

第二范式:确保表中的每列都和主键相关,而不是只与主键的一部分相关

第三范式:确保每列都喝主键列直接相关,而不是间接相关。

范式的优点和缺点

优点:减少冗余数据,减少内存的使用,更新操作更快。

缺点:查询的时候需要关联

反范式化:把所有数据都放在一张表中,表中会有大量冗余数据。适当增加冗余字段能够加快查询速度。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章