七大要素:
- 表的设计合理化(符合三范式)
- 分表技术(水平分割、垂直分割)
- 读写(select、delete、update、insert)分离
- 存储过程模块化编程,提高读的速度
- 对mysql配置优化[配置最大并发数my.ini,默认是100,中小网站提到max_connections=1000比较合理]
- mysql硬件服务器升级
- 定时清楚不需要的数据,定时进行碎片整理
表的三范式:
(1)是对属性的原子性约束,要求属性(列)具有原子性,不可再分割,即:属性表的列具有原子性(只要是关系型数据库都满足)
(2)表中的记录是唯一的,通常设计一个主键来实现
(3)即表中不要有冗余的数据,就是说表中的信息单独能推算出来
关系型数据库的特点:面对对象或集合
非关系行数据库特点:面对文档
反三范式:
没有冗余的数据库未必是最好的数据库,有时为了提高运行效率,就必须降低范式标准,适当的保留冗余数据。