好了,伙计们,就从mySQL中的一些表分区开始吧。有几种不同的方法来描述这一点,但我找不到一种更实用的方法。-每种分区方式对哪种类型的数据效果最好?
或者这真的无关紧要?
参考:http://dev.mysql.com/tech-resources/articles/performance-partitioning.html
发布于 2010-03-23 06:36:42
这取决于你到底遇到了什么样的性能问题。
MySQL 5.1的分区只允许您对主键的第一位进行分区。这意味着,如果您想要使用任何有用的分区形式,通常都希望有一个复合主键。
最常见的用例之一是使旧数据过期,这在未分区的情况下可能非常昂贵。在这种情况下,您必须使主键以日期/时间开头,并对其进行分区。
然后,您可以通过编程删除旧分区来使行过期。
在其他情况下,您的常见查询可以从分区修剪中受益。
请记住,您不能用分区解决每个性能问题;它不是魔术。对于没有从分区修剪中受益的查询,必须查询每个分区。MySQL不能并行执行此操作,因此它通常与使用非并行表一样慢。
发布于 2010-11-23 01:30:02
让我与你分享这篇关于基于时间/日期的分区和子分区的great post。它演示了分区如何成为可伸缩体系结构的良好解决方案。
https://stackoverflow.com/questions/2496127
复制相似问题