星期五, 11月 29, 2013

[SQL] Partition Table - Big Table

論壇網友問題
我都已經到3GB多了,那代表說,更應該馬上針對大的Table做分割,是吧?
即使所謂的大Table筆數還不到200萬筆?
Partition Table 是針對 Big Table 的進階技巧,而所謂的 Big Table 並不單指 Table Size、資料筆數這兩個較直覺的考量因素,還有其他因素應該考量進去,例如
  1. 該 Table 是效能瓶頸 => 分割成多個 Partition 來提升效能
  2. 索引維護困難 => Rebuild Index 耗費時間,用 Partition 可以針對單一 partition index 進行 rebuild
  3. 定期 Insert 資料或定期 Delete 舊資料會很耗時,且影響系統正常運作 => 用 Partition 減少 Lock 層級造成的影響
請把該 Table 對於整體效能的影響也列入考量,對於效能有所提昇的前提下,建立 Partitoon 才有意義,要不然不是只增加維護困難度而已。

沒有留言:

張貼留言