Oracle 大数据表格设计 分区技术

本文介绍了Oracle数据库中的分区技术,这是一种处理超大型表的有效方法。通过将大表和索引拆分为可管理的小部分,可以提高数据处理的效率和性能。文章详细解释了范围分区的概念,并展示了如何创建和动态增加分区。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转自:http://www.iteye.com/topic/174265

 

 

Oracle分区技术

ORACLE的分区(Partitioning Option)是一种处理超大型表的技术。分区是一种“分而治之”的技术,通过将大表和索引分成可以管理的小块,从而避免了对每个表作为一个大的、单独的 对象进行管理,为大量数据提供了可伸缩的性能。分区通过将操作分配给更小的存储单元,减少了需要进行管理操作的时间,并通过增强的并行处理提高了性能,通 过屏蔽故障数据的分区,还增加了可用性。

select   *   from   user_tables   a   where   a.partitioned= 'YES '

 

CREATE TABLE range 
(id  NUMBER(5), 
name VARCHAR2(30), 
amount  NUMBER(10),
sdate DATE)
COMPRESS
PARTITION BY RANGE(sdate)
(PARTITION sales_jan2000 VALUES LESS THAN(TO_DATE('16/09/2009','DD/MM/YYYY')),
 PARTITION sales_feb2000 VALUES LESS THAN(TO_DATE('17/09/2009','DD/MM/YYYY')),
 PARTITION sales_mar2000 VALUES LESS THAN(TO_DATE('18/09/2009','DD/MM/YYYY')),
 PARTITION sales_apr2000 VALUES LESS THAN(TO_DATE('19/09/2009','DD/MM/YYYY')));

 

动态增加分区

 

create or replace procedure addpart(tableName varchar2,
                                    partName  varchar2,
                                    adate     varchar2)
 is
begin
  execute immediate 'alter   table   ' || tableName || '   add   partition   ' || partName || '   
values   less   than   (to_date(''' || adate || ''',''YYYY-MM-DD'')' || ')';
end addpart;
 

 

  增加一个分区:alter   table   add   partition/alter   table   split   partition  
  释放一个表分区   alter   table  ** drop   partition  **

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值