你的位置:首页 > 数据库

[数据库]MySQL 大数据优化


大数据量的系统的数据库结构如何设计:

1、把你表中经常查询的和不常用的分开几个表,也就是横向切分

2、把不同类型的分成几个表,纵向切分  

3、常用联接的建索引 

4、服务器放几个硬盘,把数据、日志、索引分盘存放,这样可以提高IO吞吐率  

5、用优化器,优化你的查询  

6、考虑冗余,这样可以减少连接   

7、可以考虑建立统计表,就是实时生成总计表,这样可以避免每次查询都统计一次  

8、用极量数据测试一下

MySql 优化:

对 mysql 优化是一个综合性的技术,主要包括:

1、表的设计合理性(符合 3NF)

2、添加适当索引(index)【四种:普通索引、主键索引、唯一索引 unique、全文索引】

3、分表技术(水平分割、垂直分割)

4、读写【update、delete、add】分离

5、储存过程【模块化编程,可以提高速度】

6、对 mysql 配置优化【配置最大并发数 my.ini,调整缓存大小】

7、mysql 服务器硬件升级

8、定期的去清除不需要的数据,定时进行碎片整理(MyISAM)

 

为什么字段尽可能用NOT NULL,而不是NULL

字段尽可能用NOT NULL,而不是NULL,除非特殊情况。NULL为什么经常被误用?

1、NULL是创建数据表时默认的,初级或不知情的或怕麻烦的程序员不会注意这点。

2、很多人员都以为not null 需要更多空间,其实这不是重点。

3、重点是很多程序员觉得NULL在开发不用去判断插入数据,写sql语句的时候更方便快捷。