企業(yè)管理培訓(xùn)
你當(dāng)前所在的位置:首頁 > 企業(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人員等
課程目標(biāo)
1、掌握數(shù)據(jù)庫應(yīng)用優(yōu)化的思路和技巧
2、掌握多種優(yōu)化工具的使用和優(yōu)化方法
3、能夠進行SQL性能分析
4、掌握各種優(yōu)化算法的優(yōu)劣,根據(jù)應(yīng)用需求選擇合適的算法等
【課程背景】
80%以上的性能問題與應(yīng)用的架構(gòu)及SQL性能相關(guān),如果能在項目前期對系統(tǒng)架構(gòu)進行合理的規(guī)劃設(shè)計,在開發(fā)階段寫出良好的SQL代碼,在數(shù)據(jù)庫中部署合理的索引,將極大地減少數(shù)據(jù)庫的資源消耗,提高應(yīng)用響應(yīng)時間,增大數(shù)據(jù)庫的吞吐量。不論是系統(tǒng)架構(gòu),還是代碼開發(fā),或者SQL算法的選擇,這些性能點的合理優(yōu)化都需要對數(shù)據(jù)庫底層原理有深入的理解、經(jīng)驗和判斷力。本課程正是希望解決這樣的問題,課程重點放在數(shù)據(jù)庫優(yōu)化的原理和實踐上,課程由淺入深的詳細(xì)講解了Oracle數(shù)據(jù)庫應(yīng)用優(yōu)化的方法和工具,同時針對實際案例進行分析和指導(dǎo)。
課程內(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ā)中的一些性能要點進行了詳細(xì)說明
大數(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瀏覽量:258字體大?。?a href="javascript:SetFont(16)">大 中 小
學(xué)習(xí)對象
數(shù)據(jù)庫管理人員,資深開發(fā)人員,項目經(jīng)理,對數(shù)據(jù)庫應(yīng)用調(diào)優(yōu)有興趣的IT人員等
課程目標(biāo)
1、掌握數(shù)據(jù)庫應(yīng)用優(yōu)化的思路和技巧
2、掌握多種優(yōu)化工具的使用和優(yōu)化方法
3、能夠進行SQL性能分析
4、掌握各種優(yōu)化算法的優(yōu)劣,根據(jù)應(yīng)用需求選擇合適的算法等
【課程背景】
80%以上的性能問題與應(yīng)用的架構(gòu)及SQL性能相關(guān),如果能在項目前期對系統(tǒng)架構(gòu)進行合理的規(guī)劃設(shè)計,在開發(fā)階段寫出良好的SQL代碼,在數(shù)據(jù)庫中部署合理的索引,將極大地減少數(shù)據(jù)庫的資源消耗,提高應(yīng)用響應(yīng)時間,增大數(shù)據(jù)庫的吞吐量。不論是系統(tǒng)架構(gòu),還是代碼開發(fā),或者SQL算法的選擇,這些性能點的合理優(yōu)化都需要對數(shù)據(jù)庫底層原理有深入的理解、經(jīng)驗和判斷力。本課程正是希望解決這樣的問題,課程重點放在數(shù)據(jù)庫優(yōu)化的原理和實踐上,課程由淺入深的詳細(xì)講解了Oracle數(shù)據(jù)庫應(yīng)用優(yōu)化的方法和工具,同時針對實際案例進行分析和指導(dǎo)。
課程內(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ā)中的一些性能要點進行了詳細(xì)說明
大數(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語句是比較好的語句,以及如何判斷語句性能的問題