首页 / ORACLE / Oracle分区和性能简析
Oracle分区和性能简析
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Oracle分区和性能简析,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1501字,纯文字阅读大概需要3分钟。
内容图文
![Oracle分区和性能简析](/upload/InfoBanner/zyjiaocheng/566/ed1c63cd26df4c029e37e0fb471585b3.jpg)
欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入 理论上,我们进行表分区都是为了提升性能,加快查询速度。但是有的时候,不但不能加快查询速度,反而拖累的查询速度。下面举的一个例子就是这样的: 假设某一个表是按照主键散列分区,创建表如下所
欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入
理论上,我们进行表分区都是为了提升性能,加快查询速度。但是有的时候,不但不能加快查询速度,反而拖累的查询速度。下面举的一个例子就是这样的:
假设某一个表是按照主键散列分区,创建表如下所示:
Sql代码
create table t
( OWNER, OBJECT_NAME, SUBOBJECT_NAME, OBJECT_ID, DATA_OBJECT_ID,
OBJECT_TYPE, CREATED, LAST_DDL_TIME, TIMESTAMP, STATUS,
TEMPORARY, GENERATED, SECONDARY )
partition by hash(object_id)
partitions 16
as
select * from all_objects;
我们经常要在表上面,根据owner 或者 object_type,object_name 或者owner, object_type,object_name进行查询。于是我们想到在这三列上建立一个局部索引。如下所示:
Sql代码
create index t_idx
on t(owner,object_type,object_name)
LOCAL
运行一个存储过程收集cpu耗用等信息:
Sql代码
begin
dbms_stats.gather_table_stats
( user, 'T', cascade=>true);
end;
/
改变几个会话属性,便于允许TKPROF
Sql代码
alter session set timed_statistics=true;
alter session set events '10046 trace name context forever,level 12';
执行如下SQL语句:
Sql代码
select * from t where owner='SCOTT' and object_type = 'TABLE' and object_name = 'EMP';
select * from all_objects where owner='SCOTT' and object_type = 'TABLE' and object_name = 'EMP';
[1] [2]
内容总结
以上是互联网集市为您收集整理的Oracle分区和性能简析全部内容,希望文章能够帮你解决Oracle分区和性能简析所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。