oracle Partitions的意义

Partitions

Partitioning(分区)允许你把很大的Table和Index分解成小一点的,易于管理的块,曾为Partitions。每一个Partition都是一个拥有自己名字的独立的对象。

 

使用Partition的几个好处:

1。增加可用性

       不可用的分区并不会影响对象的可用性。查询分析器会自动地在执行计划中移除那些不被引用到的分区,如果恰好这些被移除的分区是不可用的话,那么整个查询不会被影响。

2。更容易管理Schema

       DDL语言能单独操作某个分区而不是整个表或索引。

3。减少在OLAP系统中的共享资源

4。提升在数据仓库中的查询性能

 

例子:

Example 4-1 Sample Row Set for Partitioned Table

PROD_ID CUST_ID TIME_ID CHANNEL_ID PROMO_ID QUANTITY_SOLD AMOUNT_SOLD ---------- ---------- --------- ---------- ---------- ------------- ----------- 116 11393 05-JUN-99 2 999 1 12.18 40 100530 30-NOV-98 9 33 1 44.99 118 133 06-JUN-01 2 999 1 17.12 133 9450 01-DEC-00 2 999 1 31.28 36 4523 27-JAN-99 3 999 1 53.89 125 9417 04-FEB-98 3 999 1 16.86 30 170 23-FEB-01 2 999 1 8.8 24 11899 26-JUN-99 4 999 1 43.04 35 2606 17-FEB-00 3 999 1 54.94 45 9491 28-AUG-98 4 350 1 47.45

You create time_range_sales as a partitioned table using the statement in Example 4-2. The time_idcolumn is the partition key.

Example 4-2 Range-Partitioned Table

CREATE TABLE time_range_sales ( prod_id NUMBER(6) , cust_id NUMBER , time_id DATE , channel_id CHAR(1) , promo_id NUMBER(6) , quantity_sold NUMBER(3) , amount_sold NUMBER(10,2) ) PARTITION BY RANGE (time_id) (PARTITION SALES_1998 VALUES LESS THAN (TO_DATE('01-JAN-1999','DD-MON-YYYY')), PARTITION SALES_1999 VALUES LESS THAN (TO_DATE('01-JAN-2000','DD-MON-YYYY')), PARTITION SALES_2000 VALUES LESS THAN (TO_DATE('01-JAN-2001','DD-MON-YYYY')), PARTITION SALES_2001 VALUES LESS THAN (MAXVALUE) );

----

或者根据一下条件来分区,当channel_id 的值为2或者4时一个分区,为3或者9时为另一个分区。

PARTITION BY LIST (channel_id) (PARTITION even_channels VALUES (2,4), PARTITION odd_channels VALUES (3,9) );
 

http://download.oracle.com/docs/cd/E11882_01/server.112/e16508/schemaob.htm#i18190

以上是关于Partition的一些解释。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值