mysql数据库分表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql数据库分表相关的知识,希望对你有一定的参考价值。

数据库主要是用来做数据统计,有个表30个字段,经常根据其中的6个字段来进行查询统计,表的量非常大,请问这种情况下该怎么分表比较合适?
只根据其中一个字段,比如时间来分的话,查询的时候因为有多个字段的条件,所以还是避免不了多表连接查询?

参考技术A 横向分表:例如将创建时间在05年之前的数据放在一个分区上,将05年到08年之间的数据放到另一个分区上,以此类推。

到底要根据那个列进行横向的分区和查询有关系,在建表的时候需要分析,会根据那个列进行查询。

思路这样,具体事情具体分析。追问

都说了要常按其中6个字段查询,按其中一个分表似乎不大好

追答

常用的加索引,分开计算表的信息,然后再加在一起。读10个数据量小的表,和读一个数据量大的表所用的时间,你觉的那个用的时间少点。。。不行你测试下。-_-......

追问

不用试了,肯定更慢。。orz

参考技术B 可以把表进行竖向分表,把经常用的放在一个表格中,表中的部分数据冗余是可以的追问

查询的时候会要求返回整个表的数据,而且还有插入,更新操作

追答

这个表中的数据有500万?

追问

嗯,而且还在增长中、、

本回答被提问者采纳

以上是关于mysql数据库分表的主要内容,如果未能解决你的问题,请参考以下文章

如何实现mysql的分库分表

mysql分库分表,而且要保证每条数据唯一

mysql 啥时候分区 啥时候分表

mysql数据库高手进来,关于分库和分表的问题

MySQL+MyCat分库分表 读写分离配置MySQL+MyCat分库分表 读写分离配置

浅谈mysql数据库分库分表那些事-亿级数据存储方案