課程目錄: 0racle 應(yīng)用優(yōu)化培訓(xùn)
        4401 人關(guān)注
        (78637/99817)
        課程大綱:

            0racle 應(yīng)用優(yōu)化培訓(xùn)

         

         

         

        引子 簡單SQL的性能誤區(qū)

        講述一些SQL使用技巧,描述開發(fā)人員容易出錯或者低效的一些SQL語句寫法,通過案例分析提高是開發(fā)人員SQL的書寫能力。下面的SQL部分重點講解一些有多年開發(fā)經(jīng)驗的開發(fā)人員也會忽略的SQL技巧和性能要點。

        1、簡單SQL的性能誤區(qū)

        一些SQL使用技巧,錯誤或者低效的一些SQL語句寫法,通過0racle內(nèi)部性能優(yōu)化工具展示不為我們所關(guān)注的那些性能隱患

        2、集合操作、GR0UP BY 子句的增強以及一些影響性能的子查詢

        3、數(shù)據(jù)操作的性能影響

        了解影響DML操作的性能因素,分析鎖競爭對DML性能下降的影響,以及其他可能帶來DML慢的原因。

        培訓(xùn)主題一、應(yīng)用優(yōu)化思路與優(yōu)化工具

        1、數(shù)據(jù)庫應(yīng)用調(diào)優(yōu)概述

        l海量數(shù)據(jù)庫優(yōu)化的思路和一些誤區(qū)

        l優(yōu)化的三個階段以及各階段的步驟和方法

        l了解整個系統(tǒng)構(gòu)建過程中各部分對性能的影響以及有哪些可以優(yōu)化的部分,尤其對海量數(shù)據(jù)庫的架構(gòu)設(shè)計、E-R模型設(shè)計及開發(fā)中的一些性能要點進行了詳細說明

        l大數(shù)據(jù)量數(shù)據(jù)庫不同類型應(yīng)用優(yōu)化的方向和方法,根據(jù)應(yīng)用需求確定優(yōu)化方向,對大數(shù)據(jù)訪問及高并發(fā)訪問的應(yīng)用優(yōu)化方向進行分析

        l優(yōu)化的基本步驟、方法以及注意事項

        2、優(yōu)化工具介紹

        l性能優(yōu)化的七種,通過各種案例學(xué)習(xí)如何通過0racle提供給我們的工具發(fā)現(xiàn)、分析、解決性能問題:

        l診斷性能問題的幫手:Statspack與AWR/ADDM,提供性能信息收集與性能差異報告,通過結(jié)合客戶的性能差異報告掌握如何進行性能問題分析與診斷

        培訓(xùn)主題二、數(shù)據(jù)庫應(yīng)用優(yōu)化——應(yīng)用存儲優(yōu)化

        1、從性能的角度分析如何用好你的表:

        l怎么選擇表

        n從作用上分析如何選擇表和臨時表

        n從數(shù)據(jù)訪問需求上,根據(jù)分區(qū)表、索引組織表、聚簇表或者普通表對性能的影響,選擇合理的數(shù)據(jù)存儲方法

        n從數(shù)據(jù)特征上考慮字段類型選擇

        n從競爭和I/0需求上考慮表的存儲參數(shù)和屬性設(shè)置

        l怎么管理表

        n松散表的判斷方法,解決松散表的move與shrink的執(zhí)行效率和性能影響

        培訓(xùn)主題三、數(shù)據(jù)庫應(yīng)用優(yōu)化——應(yīng)用SQL優(yōu)化

        1、SQL語句的處理過程

        l了解Sql語句的優(yōu)化思路和優(yōu)化重點

        分析0racle數(shù)據(jù)庫中SQL語句的處理過程,了解SQL解析、執(zhí)行、取操作的每個環(huán)節(jié)對性能的影響,掌握SQL硬解析對性能的影響和優(yōu)化硬解析的方法

        2、CB0和RB0介紹

        l了解決定SQL語句執(zhí)行計劃生成方法的優(yōu)化模式,并選擇適合的優(yōu)化模式以便得到正確的執(zhí)行計劃,對比CB0、RB0各自適合的場景

        3、優(yōu)化SQL語句的相關(guān)工具

        了解數(shù)據(jù)庫Sql語句的優(yōu)化方法,通過相關(guān)工具定位具有高影響力的SQL,收集SQL語句的統(tǒng)計信息和執(zhí)行計劃,分析執(zhí)行計劃的正確性,對比統(tǒng)計信息,選擇佳執(zhí)行計劃。涉及到的SQL優(yōu)化工具包括:

        l提供SQL優(yōu)化集的Statspack與awr

        l使用Explain plan分析執(zhí)行計劃

        l通過autotrace分析故障語句的執(zhí)行計劃和統(tǒng)計信息

        l通過Sql trace查找有性能問題的SQL語句

        l通過10g的Sql tunning advise自動分析語句性能

        l通過10g的Sql access advise自動分析語句算法

        4、數(shù)據(jù)訪問方法(大量案例演示):

        l介紹執(zhí)行計劃中的數(shù)據(jù)訪問方法以及各自的優(yōu)缺點

        l分析索引加速查詢的原理,確定索引與全表掃描到底如何選擇

        l確定哪些因素影響索引訪問的性能

        l索引適合建立在哪些字段上

        lB*tree索引與位圖索引的選擇

        lDML操作對索引的影響,以及如何設(shè)置索引的存儲參數(shù)和屬性

        l索引無效的原因以及如何書寫語句以便選擇正確的執(zhí)行計劃

        l如何通過索引加快C0UNT

        l對比hash join、nest loop、sort merge這三種奪表連接算法的優(yōu)劣

        l對物化視圖進行分析,確定這種快的數(shù)據(jù)訪問方法的特點和使用場景,并通過案例說明這些數(shù)據(jù)訪問方法對性能的影響

        5、收集統(tǒng)計信息

        l通過analyze或者dbms_stats方法收集統(tǒng)計信息

        l理解各種統(tǒng)計信息對性能有何種影響

        l分析綁定變量與統(tǒng)計信息的關(guān)系,確定使用綁定變量優(yōu)化解析適合的場景

        6、應(yīng)用或者強制執(zhí)行計劃)

        通過對語句的修改影響RB0下的執(zhí)行計劃,通過修改參數(shù)值影響CB0生成的執(zhí)行計劃,通過hints直接強制執(zhí)行計劃

        7、Sql語句優(yōu)化經(jīng)驗

        將實際經(jīng)驗中總結(jié)出的Sql使用方法和經(jīng)驗進行講解,讓大家了解什么樣的Sql語句是比較好的語句,以及如何判斷語句性能的問題