日期:2014-05-17  浏览次数:20485 次

分表和分区表的区别和选择?
对于一个大表,既可以将其拆分为N个同构的小表,也可以将其改为分区表。这两种方法在实际应用中如何使用/选择呢?( 比如说是达到多少数据量或TPS/QPS多大时就可以考虑采用某种方法,或是现有某种架构下不得不选择某种方法……)

------解决方案--------------------
抛开分区表的一些限制和缺陷来说,可以做分区表的情况下一般不拆成实体小表,因为通常需要改程序,而分区表不用。而且分区切换速度非常快。我个人偏向与使用分区表。
------解决方案--------------------
说下个人感觉:好像在分区表出现之前,当数据量很大时,一种方法就是将大表分成几个小表;后来,数据库自己实现这种功能,就是分区表。
整体来看分区表比较好,除了一些特殊情况不能使用分区表外,最好还是使用分区表。
------解决方案--------------------
数据大到什么程度,这个是主要,个人倾向分区,如果有某一天分区表也跑不动了,再考虑其他办法
------解决方案--------------------
在我看来分表和表分区在物理结构上都是一样的,只不过在逻辑结构上不同,分表在逻辑上是多张表,但是分区表在逻辑上是一张表。因此关键根据实际业务来决定采用哪种方式,例如每个月平均都差不多有上千万条数据,那么可以采用分表存储,按月标注表名。但如果每个月的数据不是那么平均,例如有的月份是上千万条,有的月份是几十万,那么可以采用分区表,安装数据容量来划分。