zoukankan      html  css  js  c++  java
  • [bbk2345] 第50集 Chapter 12Optimizing Sore Perations(05)

    Using System Statistics

    • System statistics enable the CBO to use CPU and I/O characteristics.
    • System statistics must be gathered on a regular basis;this does not invalidate cached plans.
    • Gathering system statistics equals analyzing system activity for a specified period of time.

    所有的System Statistics 信息,都将作为CBO决策的依据.

    Gathering System statistics

    Procedures of the dbms_stats package used to collect system statistics:

    • gather_system_stats
    • set_system_stats
    • get_system_stats

    Manual Gathering

    • Start manual system statistics collection in the data dictionary:
    EXECUTE dbms_stats.gather_system_stats(gathering_mode => 'START');
    • Genernate the workload
    • End system statistics collection:
    EXECUTE dbms_stats.gather_system_stats(gathering_mode => 'STOP');

    Automatic Gathering

    Collect statistics for OLTP:

    EXECUTE dbms_stats.gather_system_stats(interval => 120,stattab => 'mystats',statid => 'OLTP');

    Collect statistics for OLAP:

    EXECUTE dbms_stats.gather_system_stats(interval => 120,stattab => 'mystats',statid => 'OLAP');

    Import System Statistics

    For daytime(OLTP):

    EXECUTE dbms_stats.import_system_stats(stattab => 'mystats',statid => 'OLTP' );

    For nighttime(OLAP):

    EXECUTE dbms_stats.import_system_stats(stattab => 'mystats',statid => 'OLAP');

    Copy Statistics Between DBs

    Example

    CREATE TABLE
    SQL> exec dbms_stats.create_stat_table('HR','MYSTATS');
    
    PL/SQL procedure successfully completed.
    
    SQL> desc mystats;
     Name                                      Null?    Type
     ----------------------------------------- -------- ----------------------------
     STATID                                             VARCHAR2(30)
     TYPE                                               CHAR(1)
     VERSION                                            NUMBER
     FLAGS                                              NUMBER
     C1                                                 VARCHAR2(30)
     C2                                                 VARCHAR2(30)
     C3                                                 VARCHAR2(30)
     C4                                                 VARCHAR2(30)
     C5                                                 VARCHAR2(30)
     N1                                                 NUMBER
     N2                                                 NUMBER
     N3                                                 NUMBER
     N4                                                 NUMBER
     N5                                                 NUMBER
     N6                                                 NUMBER
     N7                                                 NUMBER
     N8                                                 NUMBER
     N9                                                 NUMBER
     N10                                                NUMBER
     N11                                                NUMBER
     N12                                                NUMBER
     D1                                                 DATE
     R1                                                 RAW(32)
     R2                                                 RAW(32)
     CH1                                                VARCHAR2(1000)
     CL1                                                CLOB

    Summary

    In this lesson,you should have learned how to:

    • Collect system statistics
    • Collect statistics on indexes and tables
    • Describe the use of histograms(主要用在column statistics上面.)
    • Copy statistics between database(主要应用在将生产库的真实环境数据,转移到测试环境下,安全有效的测试系统)
    • Determine usage of indexes(此部分,没有做任何讲解)
  • 相关阅读:
    判断&数学&生活
    Tomcat7源码环境搭建
    CentOS 7 下使用虚拟环境Virtualenv安装Tensorflow cpu版记录
    Quartz学习笔记1:Quartz概述
    Docker学习笔记2: Docker 概述
    大数据基础知识问答----spark篇,大数据生态圈
    [MSSQL] [EntityFramework(.Net Core)] 自增长id字段,无法插入数据
    [json-server] RESTful API 中,取主数据时,同时获取多个关联子表的数据
    前后端分离开发之前端自己的API(DB)---- (2)
    前后端分离开发之前端自己的API(DB)---- (1)
  • 原文地址:https://www.cnblogs.com/arcer/p/3065296.html
Copyright © 2011-2022 走看看