古道长亭

Contact me with ixiaoqiang0011@gmail.com


  • 首页

  • 归档

  • 分类

  • 关于

  • Book

  • 搜索

表结构设计优化

时间: 2022-12-21   |   分类: mysql性能优化   | 字数: 447 字 | 阅读约: 1分钟 | 阅读次数:

表结构设计优化

1. 设计中间表

设计中间表**,一般针对于**统计分析功能,或者实时性不高的需求(OLTP、OLAP)

2. 设计冗余字段

为减少关联查询,创建合理的冗余字段(创建冗余字段还需要注意数据一致性问题)

3. 拆表

对于字段太多的大表,考虑拆表(比如一个表有100多个字段)

对于表中经常不被使用的字段或者存储数据比较多的字段,考虑拆表

4. 主键优化

每张表建议都要有一个主键(主键索引),而且主键类型最好是int类型,建议自增主键(不考虑分布式系统的情况下 雪花算法)。

5. 字段的设计

  • 数据库中的表越小,在它上面执行的查询也就会越快。

    因此,在创建表的时候,为了获得更好的性能,我们可以将表中字段的宽度设得尽可能小。

  • 尽量把字段设置为NOT NULL,这样在将来执行查询的时候,数据库不用去比较NULL值。

  • 对于某些文本字段,例如“省份”或者“性别”,我们可以将它们定义为ENUM类型。

    因为在MySQL中,ENUM类型被当作数值型数据来处理,而数值型数据被处理起来的速度要比文本类型快得多。这样,我们又可以提高数据库的性能。

#mysql# #mysql优化#
QQ扫一扫交流

标题:表结构设计优化

作者:古道长亭

声明: 欢迎加群交流!

如有帮助,欢迎多多交流 ^_^

微信打赏

支付宝打赏

sql语句及索引优化
响应式编程概述
  • 文章目录
  • 站点概览
古道长亭

古道长亭

Always remember that your present situation is not your final destination. The best is yet to come.

226 日志
57 分类
104 标签
GitHub Gitee
友情链接
  • 古道长亭的BOOK
  • JAVA学习
标签云
  • Mysql
  • 搜索引擎
  • Mybatis
  • 容器
  • 架构
  • 消息队列
  • Flink
  • Sharding sphere
  • 流处理
  • 缓存
  • 1. 设计中间表
  • 2. 设计冗余字段
  • 3. 拆表
  • 4. 主键优化
  • 5. 字段的设计
© 2019 - 2024 京ICP备19012088号-1
0%