2011-02-24 25 views
5

我見過很多關於分區表的條目,但關於何時應該創建分區的信息並不多。經驗法則何時分區表

當你應該在SQL Server中分區表時,有沒有經驗法則?

謝謝

回答

2

我的基準測試表明它取決於查詢負載。

  • 如果執行的查詢始終包含在分區字段的過濾器的性能優勢幾乎是瞬間(如1000個表中的記錄已經是有益的)
  • 如果查詢不總是包含在一個過濾器在做出決定之前,你真的必須對查詢負載進行基準測試。

您還必須考慮您使用的分區系統。如果你使用「靜態」分區,立即創建它們沒有太大的危害。當您使用「滑動窗口」系統時,您需要考慮創建和合並分區的開銷。 (這可能需要很長的時間在大桌子上)

1

@ Filip的帖子是一個很好的專題指南。當你做本體論時,估計你的應用程序將如何使用,也就是說,你的用戶將如何與應用程序交互,以及如何轉化爲數據庫訪問,你應該對將要執行的查詢類型以及快速的某些表將會增長。如果你有信心,那麼你應該立即對桌子進行分區,以避免任何維護障礙。

但是,如果你試圖在決定是否進行分區填充表,或者你喜歡懶洋洋地像我一樣進行分區,這裏是從PostgreSQL文檔一個可愛的小金塊:

的確切點在哪個表將受益於分區取決於應用程序,儘管經驗法則是表的大小應超過數據庫服務器的物理內存。 [src]

相關問題