Tuning the Shared Pool的基本概念

这是一篇学习Performance Tuning——Tuning the Shared Pool的学习笔记,主要是基本的概念。

共享池体系结构

shared pool architecture

共享池的基本用途是充当元数据高速缓存。共享池多数是用来支持共享SQL和PL/SQL程序包的执行的。

共享池的主要组件包括:

  • 库高速缓存,它将共享的SQL和PL/SQL代码以及对象元数据存储在按名称空间进行区分的各个区域中
  • 数据字典高速缓存,它报错数据字典表中的 row images,又称row cache(行高速缓存)
  • 结果高速缓存(results cache)保存查询结果集和查询碎片,因此后续查询可直接从该高速缓存中检索结果

共享池中的空间分配由最近最少使用(LRU(least recently used))的算法进行管理。

阅读更多

Using Baseline

这是一篇学习baseline的笔记,主要讲述:基本的概念、使用sql创建和管理(删除),单一AWR基线、基线模板、修改默认的Moving Window Baselin的大小。

在 Oracle Database 11g 中,AWR基线提供了定义动态和未来基线的强大功能,并在很大程度上简化了创建和管理性能数据(以便比较)的过程。

Comparative Performance Analysis with AWR Baselines

Oracle Database 11g 默认具备一个系统定义的Moving Window Baseline,该基线对应于 AWR 保留期中的所有 AWR 数据。仅可存在一个Moving Window Baseline。系统定义的Moving Window Baseline认大小为当前的AWR保留期,即默认为八天。

如果要增大Moving Window Baseline,首先需要相应增大AWR保留期。AWR保留期和系统定义的Moving Window Baseline的大小是两个独立的参数。但是AWR保留期必须大于或等于系统定义的Moving Window Baseline的大小。

Oracle Database 11g 提供了收集两种基线的功能:静态基线和Moving Window Baseline。 静态基线可以是单一的,也可以是重复的。单一 AWR 基线是在单一时段内收集的。重复基线是在重复的时段(例如,六月份的每个星期一)内收集的。

在 Oracle Database 11g 中,如果 STATISTICS_LEVEL=TYPICAL 或 ALL,则默认启用基线。

基线视图

  • DBA_HIST_BASELINE:显示有关系统中所获取的基线的信息。对于每个基线,该视图显示完整的时间范围,以及该基线是否为默认基线。其它信息包括创建日期、上一次统计信息计算的时间和基线类型。
  • DBA_HIST_BASELINE_DETAILS:显示可用来确定给定基线有效性的信息,如基线时段期间是否存在关闭操作及基线时段中由快照数据覆盖的百分比。
  • DBA_HIST_BASELINE_TEMPLATE:保存了基线模板。该视图提供了 MMON 所需的信息,用以确定何时根据模板创建基线,以及何时应删除基线。
  • DBA_HIST_BASELINE_METADATA:显示基线的元数据信息,包括名称、类型、创建时间、模板和失效时间。

如果要在过去的某个时段创建基线,则使用 CREATE_BASELINE 过程;如果时段有任何部分处于未来,则使用 CREATE_BASELINE_TEMPLATE 过程。

阅读更多