欢迎投稿

今日深度:

简单说说Oracle分区(1)(5)

二:使用各种分区方法的场景

1:什么时候用Range Partition

Range Partition是一种方便的方法分区历史的数据,经常在DATE COLMUN通过时间间隔组织数据。比如说:你要查询2009年8月的数据,查询将直接找到2009年8月的分区,避免了大量不必要的数据扫描。

在处理周期性的load新数据和purge老数据的时候,Range Partition也是一个理想的选择。

应用场景:

a)有一个大表需要通过时间字段频繁的访问,通过这个时间字段做RANG PARTITION 有利于做分区裁剪。

b)如果你不能对一个大表在指定的时间内做备份或RESTORE,你可以通过RANGE把他们分成小的logic片来做。

2:什么时候用HASH Partition

HASH Partition不是一个很好的管理历史的方法。

应用场景

a)增加大表的可用性。

b)避免各个分区之间查找数据,并且各个分区可以放在不同的设备上,达到最大的I0吞吐量。也可以用STORE IN 子句分配每个分区到不同的表空间。

3:什么时候用LIST Partition

如果你想映射数据到离散的值的时候,LIST Partition是个比较好的选择。

4:什么时候用Composite Range-Hash Partitioning

这是Range和Hash的组合使用,先对表用RANGE分,然后对每个RANGE再做HASH分区。

由于做了RANGE后的子分区是没有规律的,如果在数据仓库设计时候,通过查询需求觉得有必要再细分,可以考虑使用。ORACLE会把子分区又分成不同的SEGMENT。


www.htsjk.Com true http://www.htsjk.com/shujukugl/17781.html NewsArticle 二:使用各种分区方法的场景 1:什么时候用Range Partition Range Partition是一种方便的方法分区历史的数据,经常在DATE COLMUN通过时间间隔组织数据。比如说:...
评论暂时关闭