统计信息收集

本文介绍了Oracle数据库中统计信息收集的重要性,主要用于帮助SQL优化器选择最佳执行计划。分析了Analyze命令和dbms_stats包在非分区表和分区表中的应用,强调了dbms_stats在大型分区表上的优势。详细阐述了dbms_stats的参数如options、estimate_percent和method_opt的用法,以及如何调整自动统计信息收集。
摘要由CSDN通过智能技术生成

 统计信息收集的作用?

         统计信息为了让oracle 的SQL优化器了解数据信息 包括数据量的多少和分布,以便SQL优化器 CBO能够获得较佳的执行计划,较好的执行计划 意味着oracle对于不同的SQL使用合理的访问路径和Join方式,简而言之是得到更好的性能。

优化器统计范围:

表统计; --行数,块数,行平均长度;all_tables:NUM_ROWS,BLOCKS,AVG_ROW_LEN;
列统计; --列中唯一值的数量(NDV),NULL值的数量,数据分布;
             --DBA_TAB_COLUMNS:NUM_DISTINCT,NUM_NULLS,HISTOGRAM;
索引统计;--叶块数量,等级,聚簇因子;
             --DBA_INDEXES:LEAF_BLOCKS,CLUSTERING_FACTOR,BLEVEL;
系统统计;--I/O性能与使用率;
             --CPU性能与使用率;
             --存储在aux_stats$中,需要使用dbms_stats收集,I/O统计在X$KCFIO中;

 

analyze(非分区表)

analyze table 一般可以指定分析: 表ÿ

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值