2011-02-24 36 views
5

我见过很多关于分区表的条目,但关于何时应该创建分区的信息并不多。经验法则何时分区表

当你应该在SQL Server中分区表时,有没有经验法则?

谢谢

回答

2

我的基准测试表明它取决于查询负载。

  • 如果执行的查询始终包含在分区字段的过滤器的性能优势几乎是瞬间(如1000个表中的记录已经是有益的)
  • 如果查询不总是包含在一个过滤器在做出决定之前,你真的必须对查询负载进行基准测试。

您还必须考虑您使用的分区系统。如果你使用“静态”分区,立即创建它们没有太大的危害。当您使用“滑动窗口”系统时,您需要考虑创建和合并分区的开销。 (这可能需要很长的时间在大桌子上)

1

@ Filip的帖子是一个很好的专题指南。当你做本体论时,估计你的应用程序将如何使用,也就是说,你的用户将如何与应用程序交互,以及如何转化为数据库访问,你应该对将要执行的查询类型以及快速的某些表将会增长。如果你有信心,那么你应该立即对桌子进行分区,以避免任何维护障碍。

但是,如果你试图在决定是否进行分区填充表,或者你喜欢懒洋洋地像我一样进行分区,这里是从PostgreSQL文档一个可爱的小金块:

的确切点在哪个表将受益于分区取决于应用程序,尽管经验法则是表的大小应超过数据库服务器的物理内存。 [src]

相关问题