暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
解决Oracle中Split Partition缓慢的问题.docx
427
47页
3次
2021-02-22
40墨值下载
解决
Oracle
Split Partition
缓慢的问题
2011/11/17 BY MACLEAN LIU 3
条评论
有这样一个
case
, 用户的
10g
产品数据库中有一张按照月份划分的
RANGE
分区表 , 其
范围为
Less than (maxvalue)
的最后一个
Partition
分区总是为空
Empty
的, 用户每隔半年
会对这个
MaxValue Partition
执行
Split Partition
操作, 以便存放后续月份的数据, 同时
这个表上还有一个非分区索引
Nonpartitioned indexes
满以为
Split
这样一个
Empry Partition
会是一个回车就结束的任务, 但是
Performance
issue
就在这平淡无奇的分区维护工作中出现了, 实际在执行”
Alter Table Split partition Pn
at (value) into …”
DDL
语句时,发现需要花费超过十多分钟才能完成一次
Split
。问题就
在于,如果是有大量数据的
Partition
分区 ,
Split
操作慢一些也是正常的
(expected
预期内
)
, 但是实际这里的
Max Partition
总是为空的,没有任何一条数据, 为什么
Split
一个
空的分区也会是这种蜗牛的速度呢?
我们来模拟这个现象, 首先创建一张分区表,
Maxvalue
Partition
Empty
的,且有一
个普通索引
:
SQL> select * from v$version;
BANNER
---------------------------------------------------------
-------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0
- 64bi
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for Linux: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production
SQL> select * from global_name;
GLOBAL_NAME
---------------------------------------------------------
-----------------------
www.oracledatabase12g.com & www.askmaclean.com
SQL> CREATE TABLE Maclean
2 ( "OWNER" VARCHAR2(30),
3 "OBJECT_NAME" VARCHAR2(128),
4 "SUBOBJECT_NAME" VARCHAR2(30),
5 "OBJECT_ID" NUMBER,
6 "DATA_OBJECT_ID" NUMBER,
7 "OBJECT_TYPE" VARCHAR2(19),
8 "CREATED" DATE,
9 "LAST_DDL_TIME" DATE,
10 "TIMESTAMP" VARCHAR2(19),
11 "STATUS" VARCHAR2(7),
12 "TEMPORARY" VARCHAR2(1),
13 "GENERATED" VARCHAR2(1),
14 "SECONDARY" VARCHAR2(1)
15 ) nologging
16 partition by range(object_id)
17 (partition p1 values less than (99999) tablespace
users,
18 partition p2 values less than (maxvalue)
tablespace users);
Table created.
of 47
40墨值下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜