※ 引述《iamnotfat (我不肥)》之銘言:
: 假設我現在有一個系統 內含手機號碼為primary key,共一百萬筆
: 但我不確定門號分布,所以我可以用hash partition or range partition
: 不知道大大們會選用哪一種
: ex1:
: range partition:
: 0910
: 0920
: 0930
: .
: .
: .
: 0990....etc
: 但為了performance問題仍可在細切....例如每五萬筆再另開一個partition
: ex2:
: hash partition
: hash 20 切成二十個等分
如果要使用hash partition的話可以估算一下,table的成長率,
然後再看要開多少個hash partition,另外使用hash可以使用parallel query增進效能,
不過用parallel query必須要小心使用,使用不當會使DB server撐不住。
按照你上面所敘述的,小弟的建議是使用range比較OK.可自行測試兩種partition看看囉
不過如果資料量只有100萬筆感覺上是不需要分partition
如果index建的好的話,前端程式也都會使用到index的話,應該不至於需要partition table。
Oracle官方建議是如果table 大於2G的話,就建議使用partition來增進效能.
以上是小弟的拙見,謝謝。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.42.198.89