mysql之表结构对性能的影响

五迷三道 提交于 2019-11-30 05:49:11

1.冗余数据的处理

      1.1关系数据库的三范式

               1.第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库,是指数据库表中的每一列都是不可分割的基本数据项,同一列中不能出现多个值;

                2.第二范式(2NF)要求数据库表中每一行或者每一条记录必须可以被唯一的区分.

               3.第三范式(3NF)要求一个数据库表中不包含已在其他表中包含的非主键信息,也就是不能出现冗余数据.

      2.适当的冗余数据可以提高数据库的整体查询性能

2.大表小表,有大数据的列单独拆分成小表;

        1.在一个数据库中,一般不会设计属性过多的表;(拆分表,纵向拆分)

       2.在一个数据库中,一般不会超过500/1000万条数据的表(拆分表,横向拆分,按照逻辑或者业务拆分)

       3.有大数据的列单独拆分成小表

3.根据需求的展示设置合理的表结构

4.把常用属性分离成小表

  1.减少查询常用属性需要查询的列;

  2.便于常用属性的集中缓存;

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!