在设计好表结构之后, 就需要进行物理设计, 将实体及属性映射到具体表和列. 而合理选择存储引擎和列类型也是数据库设计十分重要的一个环节....列字段类型选择
在一个列可以选择多种数据类型时, 应该优先使用数字类型, 其次是日期或二进制类型, 最后是字符类型.
如果是相同数据类型有多种选择时, 应该优先选择占用空间少的数据类型....简单解释下:
1.在数据比较, 关联匹配以及排序时, 字符类型与字符集排序有关; 而数字和二进制是只与二进制值相关, 相对效率也就更高一些;
2.数据处理是以页为单位, 列的长度越小, 一页能容纳的数据就越多...在加载同样数据时, 需要加载的数据页也就越少, 也就能减少磁盘IO, 提高数据库性能.
3.1 整数类型
根据业务情况, 选择合适类型
类型 大小 有符号范围 无符号范围(unsigned)
tinyint...在数据增长量不是很快情况下, 也是一个不错的选择.
雪花算法(snowflake)
snowflake是Twitter开源的分布式ID生成算法, 结果是一个long型的ID.