MySQL分区技术

针对海量数据的优化主要有两种:

大表拆小表的方式;SQL语句的优化
 
分区技术:
与水平分割类似,但它是在逻辑层进行的水平分表,对于应用程序而言它还是一张表
 
一、range方式
1、创建一张分区表
MySQL分区技术_第1张图片
 
可以到/usr/local/mysql/var/test/下看到生成这么多文件(26个)
MySQL分区技术_第2张图片
 
 2、创建一张未分区表
MySQL分区技术 - Kelly Cen - __kelly_
 可以到/usr/local/mysql/var/test/下看到生成3个对应的文件
MySQL分区技术_第3张图片
 
3、建立load_part_tab存储
MySQL分区技术_第4张图片
 
4、添加800W条数据
MySQL分区技术 - Kelly Cen - __kelly_
 在/usr/local/mysql/var/test/下使用命令: watch -n1 ls -lh 动态查看插入数据各分区的动态变化MySQL分区技术_第5张图片
用top令可查看CUP、内存的使用情况
MySQL分区技术 - Kelly Cen - __kelly_
 
5、在未分区表也插入这么多数据
MySQL分区技术 - Kelly Cen - __kelly_
 
6、测试sql性能
MySQL分区技术_第6张图片
 
查看受影响行数
 MySQL分区技术_第7张图片

 

创建索引
MySQL分区技术 - Kelly Cen - __kelly_
 
MySQL分区技术 - Kelly Cen - __kelly_
 
再测试sql性能
MySQL分区技术_第8张图片
 
增加未索引字段查询
MySQL分区技术_第9张图片

你可能感兴趣的:(mysql)