企業(yè)管理培訓(xùn)
你當前所在的位置:首頁 > 企業(yè)管理培訓(xùn) > 企業(yè)內(nèi)訓(xùn) > Oracle 10g應(yīng)用優(yōu)化-上海工慧企業(yè)管理
學(xué)習(xí)對象
數(shù)據(jù)庫管理人員,資深開發(fā)人員,項目經(jīng)理,對數(shù)據(jù)庫應(yīng)用調(diào)優(yōu)有興趣的IT人員等
課程目標
1. 掌握數(shù)據(jù)庫應(yīng)用優(yōu)化的思路和技巧
2. 掌握多種優(yōu)化工具的使用和優(yōu)化方法
3. 能夠進行SQL性能分析
4. 掌握各種優(yōu)化算法的優(yōu)劣,根據(jù)應(yīng)用需求選擇合適的算法等
課程內(nèi)容
第一天
引子 簡單SQL的性能誤區(qū)
講述一些SQL使用技巧,描述開發(fā)人員容易出錯或者低效的一些SQL語句寫法,通過案例分析提高是開發(fā)人員SQL的書寫能力。下面的SQL部分重點講解一些有多年開發(fā)經(jīng)驗的開發(fā)人員也會忽略的SQL技巧和性能要點。
1、簡單SQL的性能誤區(qū)
一些SQL使用技巧,錯誤或者低效的一些SQL語句寫法,通過Oracle內(nèi)部性能優(yōu)化工具展示不為我們所關(guān)注的那些性能隱患
2、集合操作、GROUP BY 子句的增強以及一些影響性能的高級子查詢
3、數(shù)據(jù)操作的性能影響
了解影響DML操作的性能因素,分析鎖競爭對DML性能下降的影響,以及其他可能帶來DML慢的原因。
培訓(xùn)主題一、應(yīng)用優(yōu)化思路與高級優(yōu)化工具
1、數(shù)據(jù)庫應(yīng)用調(diào)優(yōu)概述
? 海量數(shù)據(jù)庫優(yōu)化的思路和一些誤區(qū)
? 優(yōu)化的三個階段以及各階段的步驟和方法
? 了解整個系統(tǒng)構(gòu)建過程中各部分對性能的影響以及有哪些可以優(yōu)化的部分,尤其對海量數(shù)據(jù)庫的架構(gòu)設(shè)計、E-R模型設(shè)計及開發(fā)中的一些性能要點進行了詳細說明
? 大數(shù)據(jù)量數(shù)據(jù)庫不同類型應(yīng)用優(yōu)化的方向和方法,根據(jù)應(yīng)用需求確定優(yōu)化方向,對大數(shù)據(jù)訪問及高并發(fā)訪問的應(yīng)用優(yōu)化方向進行分析
? 優(yōu)化的基本步驟、方法以及注意事項
第二天
2、優(yōu)化工具介紹
? 性能優(yōu)化的七種武器,通過各種案例學(xué)習(xí)如何通過Oracle提供給我們的工具發(fā)現(xiàn)、分析、解決性能問題:
? 診斷性能問題的幫手:Statspack與AWR/ADDM,提供性能信息收集與性能差異報告,通過結(jié)合客戶的性能差異報告掌握如何進行性能問題分析與診斷
培訓(xùn)主題二、數(shù)據(jù)庫應(yīng)用優(yōu)化——應(yīng)用存儲優(yōu)化
1、從性能的角度分析如何用好你的表:
? 怎么選擇表
? 從作用上分析如何選擇永久表和臨時表
? 從數(shù)據(jù)訪問需求上,根據(jù)分區(qū)表、索引組織表、聚簇表或者普通表對性能的影響,選擇合理的數(shù)據(jù)存儲方法
? 從數(shù)據(jù)特征上考慮字段類型選擇
? 從競爭和I/O需求上考慮表的存儲參數(shù)和屬性設(shè)置
? 怎么管理表
? 松散表的判斷方法,解決松散表的move與shrink的執(zhí)行效率和性能影響
培訓(xùn)主題三、數(shù)據(jù)庫應(yīng)用優(yōu)化——應(yīng)用SQL優(yōu)化
1、SQL語句的處理過程
? 了解Sql語句的優(yōu)化思路和優(yōu)化重點
分析Oracle數(shù)據(jù)庫中SQL語句的處理過程,了解SQL解析、執(zhí)行、取操作的每個環(huán)節(jié)對性能的影響,掌握SQL硬解析對性能的影響和優(yōu)化硬解析的方法
2、CBO和RBO介紹
? 了解決定SQL語句執(zhí)行計劃生成方法的優(yōu)化模式,并選擇適合的優(yōu)化模式以便得到正確的執(zhí)行計劃,對比CBO、RBO各自適合的場景
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)化工具包括:
? 提供SQL優(yōu)化集的Statspack與awr
? 使用Explain plan分析執(zhí)行計劃
? 通過autotrace分析故障語句的執(zhí)行計劃和統(tǒng)計信息
? 通過Sql trace查找有性能問題的SQL語句
? 通過10g的Sql tunning advise自動分析語句性能
? 通過10g的Sql access advise自動分析語句算法
第三天
4、數(shù)據(jù)訪問方法(大量案例演示):
? 介紹執(zhí)行計劃中的數(shù)據(jù)訪問方法以及各自的優(yōu)缺點
? 分析索引加速查詢的原理,確定索引與全表掃描到底如何選擇
? 確定哪些因素影響索引訪問的性能
? 索引適合建立在哪些字段上
? B*tree索引與位圖索引的選擇
? DML操作對索引的影響,以及如何設(shè)置索引的存儲參數(shù)和屬性
? 索引無效的原因以及如何書寫語句以便選擇正確的執(zhí)行計劃
? 如何通過索引加快COUNT
? 對比hash join、nest loop、sort merge這三種奪表連接算法的優(yōu)劣
? 對物化視圖進行分析,確定這種最快的數(shù)據(jù)訪問方法的特點和使用場景,并通過案例說明這些數(shù)據(jù)訪問方法對性能的影響
5、收集統(tǒng)計信息
? 通過analyze或者dbms_stats方法收集統(tǒng)計信息
? 理解各種統(tǒng)計信息對性能有何種影響
? 分析綁定變量與統(tǒng)計信息的關(guān)系,確定使用綁定變量優(yōu)化解析最適合的場景
6、應(yīng)用或者強制執(zhí)行計劃)
通過對語句的修改影響RBO下的執(zhí)行計劃,通過修改參數(shù)值影響CBO生成的執(zhí)行計劃,通過hints直接強制執(zhí)行計劃
7、Sql語句優(yōu)化經(jīng)驗
將實際經(jīng)驗中總結(jié)出的Sql使用方法和經(jīng)驗進行講解,讓大家了解什么樣的Sql語句是比較好的語句,以及如何判斷語句性能的問題
Oracle 10g應(yīng)用優(yōu)化-上海工慧企業(yè)管理
信息來源:工慧企業(yè)管理服務(wù)外包網(wǎng)更新時間:2017-5-31瀏覽量:174字體大?。?a href="javascript:SetFont(16)">大 中 小
學(xué)習(xí)對象
數(shù)據(jù)庫管理人員,資深開發(fā)人員,項目經(jīng)理,對數(shù)據(jù)庫應(yīng)用調(diào)優(yōu)有興趣的IT人員等
課程目標
1. 掌握數(shù)據(jù)庫應(yīng)用優(yōu)化的思路和技巧
2. 掌握多種優(yōu)化工具的使用和優(yōu)化方法
3. 能夠進行SQL性能分析
4. 掌握各種優(yōu)化算法的優(yōu)劣,根據(jù)應(yīng)用需求選擇合適的算法等
課程內(nèi)容
第一天
引子 簡單SQL的性能誤區(qū)
講述一些SQL使用技巧,描述開發(fā)人員容易出錯或者低效的一些SQL語句寫法,通過案例分析提高是開發(fā)人員SQL的書寫能力。下面的SQL部分重點講解一些有多年開發(fā)經(jīng)驗的開發(fā)人員也會忽略的SQL技巧和性能要點。
1、簡單SQL的性能誤區(qū)
一些SQL使用技巧,錯誤或者低效的一些SQL語句寫法,通過Oracle內(nèi)部性能優(yōu)化工具展示不為我們所關(guān)注的那些性能隱患
2、集合操作、GROUP BY 子句的增強以及一些影響性能的高級子查詢
3、數(shù)據(jù)操作的性能影響
了解影響DML操作的性能因素,分析鎖競爭對DML性能下降的影響,以及其他可能帶來DML慢的原因。
培訓(xùn)主題一、應(yīng)用優(yōu)化思路與高級優(yōu)化工具
1、數(shù)據(jù)庫應(yīng)用調(diào)優(yōu)概述
? 海量數(shù)據(jù)庫優(yōu)化的思路和一些誤區(qū)
? 優(yōu)化的三個階段以及各階段的步驟和方法
? 了解整個系統(tǒng)構(gòu)建過程中各部分對性能的影響以及有哪些可以優(yōu)化的部分,尤其對海量數(shù)據(jù)庫的架構(gòu)設(shè)計、E-R模型設(shè)計及開發(fā)中的一些性能要點進行了詳細說明
? 大數(shù)據(jù)量數(shù)據(jù)庫不同類型應(yīng)用優(yōu)化的方向和方法,根據(jù)應(yīng)用需求確定優(yōu)化方向,對大數(shù)據(jù)訪問及高并發(fā)訪問的應(yīng)用優(yōu)化方向進行分析
? 優(yōu)化的基本步驟、方法以及注意事項
第二天
2、優(yōu)化工具介紹
? 性能優(yōu)化的七種武器,通過各種案例學(xué)習(xí)如何通過Oracle提供給我們的工具發(fā)現(xiàn)、分析、解決性能問題:
? 診斷性能問題的幫手:Statspack與AWR/ADDM,提供性能信息收集與性能差異報告,通過結(jié)合客戶的性能差異報告掌握如何進行性能問題分析與診斷
培訓(xùn)主題二、數(shù)據(jù)庫應(yīng)用優(yōu)化——應(yīng)用存儲優(yōu)化
1、從性能的角度分析如何用好你的表:
? 怎么選擇表
? 從作用上分析如何選擇永久表和臨時表
? 從數(shù)據(jù)訪問需求上,根據(jù)分區(qū)表、索引組織表、聚簇表或者普通表對性能的影響,選擇合理的數(shù)據(jù)存儲方法
? 從數(shù)據(jù)特征上考慮字段類型選擇
? 從競爭和I/O需求上考慮表的存儲參數(shù)和屬性設(shè)置
? 怎么管理表
? 松散表的判斷方法,解決松散表的move與shrink的執(zhí)行效率和性能影響
培訓(xùn)主題三、數(shù)據(jù)庫應(yīng)用優(yōu)化——應(yīng)用SQL優(yōu)化
1、SQL語句的處理過程
? 了解Sql語句的優(yōu)化思路和優(yōu)化重點
分析Oracle數(shù)據(jù)庫中SQL語句的處理過程,了解SQL解析、執(zhí)行、取操作的每個環(huán)節(jié)對性能的影響,掌握SQL硬解析對性能的影響和優(yōu)化硬解析的方法
2、CBO和RBO介紹
? 了解決定SQL語句執(zhí)行計劃生成方法的優(yōu)化模式,并選擇適合的優(yōu)化模式以便得到正確的執(zhí)行計劃,對比CBO、RBO各自適合的場景
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)化工具包括:
? 提供SQL優(yōu)化集的Statspack與awr
? 使用Explain plan分析執(zhí)行計劃
? 通過autotrace分析故障語句的執(zhí)行計劃和統(tǒng)計信息
? 通過Sql trace查找有性能問題的SQL語句
? 通過10g的Sql tunning advise自動分析語句性能
? 通過10g的Sql access advise自動分析語句算法
第三天
4、數(shù)據(jù)訪問方法(大量案例演示):
? 介紹執(zhí)行計劃中的數(shù)據(jù)訪問方法以及各自的優(yōu)缺點
? 分析索引加速查詢的原理,確定索引與全表掃描到底如何選擇
? 確定哪些因素影響索引訪問的性能
? 索引適合建立在哪些字段上
? B*tree索引與位圖索引的選擇
? DML操作對索引的影響,以及如何設(shè)置索引的存儲參數(shù)和屬性
? 索引無效的原因以及如何書寫語句以便選擇正確的執(zhí)行計劃
? 如何通過索引加快COUNT
? 對比hash join、nest loop、sort merge這三種奪表連接算法的優(yōu)劣
? 對物化視圖進行分析,確定這種最快的數(shù)據(jù)訪問方法的特點和使用場景,并通過案例說明這些數(shù)據(jù)訪問方法對性能的影響
5、收集統(tǒng)計信息
? 通過analyze或者dbms_stats方法收集統(tǒng)計信息
? 理解各種統(tǒng)計信息對性能有何種影響
? 分析綁定變量與統(tǒng)計信息的關(guān)系,確定使用綁定變量優(yōu)化解析最適合的場景
6、應(yīng)用或者強制執(zhí)行計劃)
通過對語句的修改影響RBO下的執(zhí)行計劃,通過修改參數(shù)值影響CBO生成的執(zhí)行計劃,通過hints直接強制執(zhí)行計劃
7、Sql語句優(yōu)化經(jīng)驗
將實際經(jīng)驗中總結(jié)出的Sql使用方法和經(jīng)驗進行講解,讓大家了解什么樣的Sql語句是比較好的語句,以及如何判斷語句性能的問題