垂直分区VS水平分区有什么好处?

时间:2011-07-12 17:38:36

标签: mysql sql-server database partitioning sharding

我根本无法理解何时或在什么情况下我们会选择垂直分区而不是水平分区。

垂直分区VS水平分区有什么好处?

有没有使用垂直分区的网站/公司/任何人的例子,这是决定的主要原因是什么?

2 个答案:

答案 0 :(得分:9)

具有垂直分区的主要原因是表中的列比其他列更频繁地更新。您将它们分隔在另一个表/分区中,并且在执行更新时,不会更新表的其余部分。示例可以是帖子计数器。如果它与其他用户数据在同一个表中,则计数器的每次更新(并且有很多)都将锁定整个记录,但您需要经常阅读。在垂直分区中,更新的表将是user_counters,用户的性能不会受到更新次数的影响。

答案 1 :(得分:0)

我完全同意达哈泽所说的话。 “垂直分区的一个示例可能是一个包含许多非常宽的文本或BLOB列的表,这些列通常被分成两个表,其中一个表中引用最多的列很少引用的文本或另一个中的BLOB数据“。如上所述:http://dev.mysql.com/tech-resources/articles/partitioning.html