暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

【每日一练 090】性能优化-SQL tuning(三)

原创 李美静 恩墨学院 2020-12-14
1728

1 DBMS_STATS包

1.1 作用

DBMS_STATS.GATHER_STATS 可以在不同级别调用收集统计信息,如收集整个数据库或单个对象(如表)的统计信息。在调用时,几个参数通常允许缺省。提供的默认值对于数据库中的大多数对象都适用,但是对于某些对象或模式,需要更改默认值。Oracle数据库允许为单个对象、模式或数据库设置值(称为首选项),或者使用全局级别的命令。
SET
_PREFS过程为系统或系统不拥有的任何对象设置收集统计信息的首选项值。
SET_DATATBASE_PREFS过程遍历数据库中的所有表和模式,以设置指定的首选项。SET_SCHEMA_PREFS遍历指定模式中的表。SET_TABLE_PREFS设置单个表的首选项。
所有对象的首选项——无论是在数据库、模式还是表级别上设置的——都保存在一个表中。在模式级别更改参数将覆盖以前在表级别设置的首选项。

1.2 具体首选项

在执行各种收集统计信息过程时,为每个对象设置的对象级首选项。可以在DBA_TAB_STAT_PREFS视图中查看对象级首选项。没有在对象级别设置的任何首选项都将设置为全局级别首选项。可以通过调用DBMS_STATS来查看全局首选项。每个首选项的GET_PREFS过程。
可以在表、模式、数据库和全局级别设置、获取、删除、导出和导入这些首选项。首选项值应该从全局级别设置到表级别,最后将首选项应用到最小的组。
参数包括:
CASCADE——确定是否在收集表统计信息时收集索引统计信息
DEGREE ——设置用于收集统计信息的并行度
PUBLISH——用于决定是将统计数据发布到字典还是将它们存储在私有区域。这使DBA能够在使用PUBLISH_PENDING_STATS过程将统计数据发布到数据字典之前验证统计数据。
STALE_PERCENT——用于确定将对象视为具有过时统计信息的阈值水平。该值是自上次统计信息收集以来修改的行的百分比。
EXEC DBMS_STATS.SET_TABLE_PREFS(‘SH’,‘SALES’,‘STALE_PERCENT’,‘13’);
仅将SH.SALES的默认值从10%更改为13%。
INCREMENTAL——用于以增量方式收集分区表上的全局统计信息
METHOD_OPT——确定用于收集列统计信息的列和直方图参数
GRANULARITY——确定要收集的统计信息的粒度(只有在表被分区时才相关)
NO_INVALIDATE——用于确定是否使游标失效
ESTIMATE_PERCENT——用于确定要采样的行数,以获得良好的统计信息。它是表中行数的百分比
可以使用DBMS_STATS删除首选项,DELETE_*_PREFS过程在表、模式和数据库级别上。可以使用DBMS_STATS将全局首选项重置为默认值,RESET_PARAM_DEFAULTS过程。

2 12c新特性

在Oracle数据库12c之前,自动统计数据收集作业每次收集一个段的统计数据。它现在使用并发性。
在Oracle数据库12c中,可以并发地运行多个统计信息收集任务,这可以通过提高资源利用率(特别是在多cpu系统上)大大提高统计信息收集时间。
例如,使用智能调度机制来获得最大程度的并发性(在资源可用的范围内),从而允许并发地收集多个分区表的统计信息。

3 查看统计信息

image.png
为了有效地诊断性能问题,必须提供统计信息。Oracle数据库实例在实例级为系统、会话和单个SQL语句生成许多类型的累计统计信息。Oracle数据库服务器还跟踪段和服务的累计统计信息。在分析这些范围内的性能问题时,通常要查看感兴趣的时间段内统计数据(增量值)的变化。
注意:实例统计信息是动态的,并且在每个实例启动时重置。这些统计信息可以在某个时间点捕获,并以快照的形式保存在数据库中。
等待事件统计:
所有可能的等待事件都在V$ EVENT_NAME视图中。
所有会话的累计统计信息存储在V$ SYSTEM_EVENT中,它显示自实例启动以来等待特定事件的总数。在进行故障排除时,需要知道进程是否等待了任何资源。
系统统计数据:
所有系统范围的统计信息都被编目在V$ STATNAME视图中:在Oracle数据库中有400多个统计信息可用。

最后修改时间:2020-12-14 09:21:04
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论