数据库 设计中,字段的物理化要选择合适的类型,考虑以下因素:
1. 尽量使用短字段的数据类型
长度较短的数据类型不仅可以减小数据文件的大小,提升IO性能;同时也可以减小相关计算时的内存消耗,提升计算性能。
比如对于整型数据,如果可以用smallint就尽量不用int,如果可以用int就尽量不用bigint。
2. 使用一致的数据类型
表关联列尽量使用相同的数据类型。如果表关联列数据类型不同,数据库必须动态地转化为相同的数据类型进行比较,这种转换会带来一定的性能消耗。
3. 选择高效数据类型。
4. 字段的约束
DEFAULT:如果能够从业务层面补全字段值,就不建议使用DEFAULT约束,避免数据加载时产生不符合预期的结果。
NOT NULL:给明确不存在NULL值的字段加上NOT NULL约束。
唯一约束/主键约束:主键 = 唯一 + NOT NULL。如果条件允许,就增加。
检查约束:因为对于数据质量提出了要求,不满足约束的数据在插入数据表会导致SQL失败。