課(ke)程(cheng)描述INTRODUCTION
Oracle 應用優化培訓課程
日程安排SCHEDULE
課(ke)程大綱(gang)Syllabus
Oracle 應用優化培訓課程
內容提示
本(ben)課(ke)程(cheng)的(de)(de)(de)(de)學員(yuan)需(xu)要具備基本(ben)的(de)(de)(de)(de)Oracle數(shu)(shu)據(ju)(ju)庫(ku)(ku)(ku)(ku)原(yuan)理(li)(li)(li)(li)(li)和(he)應(ying)(ying)用(yong)(yong)開發的(de)(de)(de)(de)知識,有(you)一定的(de)(de)(de)(de)工作經(jing)驗(yan)。數(shu)(shu)據(ju)(ju)庫(ku)(ku)(ku)(ku)應(ying)(ying)用(yong)(yong)優化方(fang)法(fa)主(zhu)要集中在發現Oracle數(shu)(shu)據(ju)(ju)庫(ku)(ku)(ku)(ku)的(de)(de)(de)(de)資(zi)源(yuan)瓶頸,發現應(ying)(ying)用(yong)(yong)代碼(ma)中典(dian)型的(de)(de)(de)(de)高負(fu)載SQL的(de)(de)(de)(de)不合(he)理(li)(li)(li)(li)(li)性(xing),從而找到提(ti)高SQL執行效率、減少資(zi)源(yuan)消耗的(de)(de)(de)(de)方(fang)法(fa)。我們(men)發現,80%以(yi)上的(de)(de)(de)(de)性(xing)能(neng)問題與應(ying)(ying)用(yong)(yong)的(de)(de)(de)(de)架構及SQL性(xing)能(neng)相關,如果能(neng)在項目前期對系統(tong)架構進(jin)行合(he)理(li)(li)(li)(li)(li)的(de)(de)(de)(de)規(gui)劃設計(ji),在開發階段寫出良好的(de)(de)(de)(de)SQL代碼(ma),在數(shu)(shu)據(ju)(ju)庫(ku)(ku)(ku)(ku)中部署合(he)理(li)(li)(li)(li)(li)的(de)(de)(de)(de)索引,將極大地減少數(shu)(shu)據(ju)(ju)庫(ku)(ku)(ku)(ku)的(de)(de)(de)(de)資(zi)源(yuan)消耗,提(ti)高應(ying)(ying)用(yong)(yong)響應(ying)(ying)時間,增大數(shu)(shu)據(ju)(ju)庫(ku)(ku)(ku)(ku)的(de)(de)(de)(de)吞吐量。不論是系統(tong)架構,還是代碼(ma)開發,或者SQL算法(fa)的(de)(de)(de)(de)選擇,這(zhe)些性(xing)能(neng)點的(de)(de)(de)(de)合(he)理(li)(li)(li)(li)(li)優化都(dou)需(xu)要對數(shu)(shu)據(ju)(ju)庫(ku)(ku)(ku)(ku)底層原(yuan)理(li)(li)(li)(li)(li)有(you)深(shen)(shen)入的(de)(de)(de)(de)理(li)(li)(li)(li)(li)解、經(jing)驗(yan)和(he)判斷力。本(ben)課(ke)程(cheng)正(zheng)是希望解決這(zhe)樣的(de)(de)(de)(de)問題,課(ke)程(cheng)重點放(fang)在數(shu)(shu)據(ju)(ju)庫(ku)(ku)(ku)(ku)優化的(de)(de)(de)(de)原(yuan)理(li)(li)(li)(li)(li)和(he)實踐上,課(ke)程(cheng)由淺(qian)入深(shen)(shen)的(de)(de)(de)(de)詳細講(jiang)解了(le)Oracle數(shu)(shu)據(ju)(ju)庫(ku)(ku)(ku)(ku)應(ying)(ying)用(yong)(yong)優化的(de)(de)(de)(de)方(fang)法(fa)和(he)工具,同時針對實際案(an)例(li)進(jin)行分析和(he)指導。
培訓內容
引子 簡單SQL的性能誤區
講述一些SQL使用技巧,描述開發人員容易出錯或者低效的一些SQL語句寫法,通過案例分析提高是開發人員SQL的書寫能力。下面的SQL部分重點講解一些有多年開發經驗的開發人員也會忽略的SQL技巧和性能要點。
1、簡單SQL的性能誤區
一些SQL使用技巧,錯誤或者低效的一些SQL語句寫法,通過Oracle內部性能優化工具展示不為我們所關注的那些性能隱患
2、集合操作、GROUP BY 子句的增強以及一些影響性能的高級子查詢
3、數據操作的性能影響
了(le)解影(ying)響DML操作的(de)性能因素,分析鎖競爭對DML性能下(xia)降的(de)影(ying)響,以及其他可(ke)能帶來DML慢的(de)原(yuan)因。
培訓主題一、應用優化思路與高級優化工具
1、數據庫應用調優概述
.海量數據庫優化的思路和一些誤區
.優化的三個階段以及各階段的步驟和方法
.了解整個系統構建過程中各部分對性能的影響以及有哪些可以優化的部分,尤其對海量數據庫的架構設計、E-R模型設計及開發中的一些性能要點進行了詳細說明
.大數據量數據庫不同類型應用優化的方向和方法,根據應用需求確定優化方向,對大數據訪問及高并發訪問的應用優化方向進行分析
.優化的基本步驟、方法以及注意事項
2、優化工具介紹
.性能優化的七種武器,通過各種案例學習如何通過Oracle提供給我們的工具發現、分析、解決性能問題:
.診斷性能(neng)(neng)問題的(de)幫手:Statspack與(yu)AWR/ADDM,提供性能(neng)(neng)信息收(shou)集與(yu)性能(neng)(neng)差(cha)異(yi)報告,通(tong)過結合(he)客(ke)戶的(de)性能(neng)(neng)差(cha)異(yi)報告掌(zhang)握如何進行性能(neng)(neng)問題分析(xi)與(yu)診斷
培訓主題二、數據庫應用優化——應用存儲優化
1、從性能的角度分析如何用好你的表:
.怎么選擇表
.從作用上分析如何選擇*表和臨時表
.從數據訪問需求上,根據分區表、索引組織表、聚簇表或者普通表對性能的影響,選擇合理的數據存儲方法
.從數據特征上考慮字段類型選擇
.從競爭和I/O需求上考慮表的存儲參數和屬性設置
.怎么管理表
.松散表的判斷方法,解決松散表的move與shrink的執行效(xiao)率和性能影響
培訓主題三、數據庫應用優化——應用SQL優化
1、SQL語句的處理過程
.了解Sql語句的優化思路和優化重點
分(fen)析(xi)Oracle數據庫中SQL語(yu)句的處理過(guo)程,了解(jie)(jie)(jie)SQL解(jie)(jie)(jie)析(xi)、執行(xing)、取操作的每(mei)個環節對性能的影(ying)響(xiang),掌握SQL硬(ying)解(jie)(jie)(jie)析(xi)對性能的影(ying)響(xiang)和優化硬(ying)解(jie)(jie)(jie)析(xi)的方(fang)法
2、CBO和RBO介紹
.了解決定SQL語句執行計(ji)劃(hua)(hua)生(sheng)成方法的(de)優化(hua)模(mo)式(shi),并選擇適合的(de)優化(hua)模(mo)式(shi)以便(bian)得到正確的(de)執行計(ji)劃(hua)(hua),對比CBO、RBO各(ge)自適合的(de)場景(jing)
3、優化SQL語句的相關工具
了解數據庫Sql語句的優化方法,通過相關工具定位具有高影響力的SQL,收集SQL語句的統計信息和執行計劃,分析執行計劃的正確性,對比統計信息,選擇*執行計劃。涉及到的SQL優化工具包括:
.提供SQL優化集的Statspack與awr
.使用Explai.plan分析執行計劃
.通過autotrace分析故障語句的執行計劃和統計信息
.通過Sq.trace查找有性能問題的SQL語句
.通過10g的Sq.tunning advise自動分析語句性能
.通過(guo)10g的Sq.access advise自動分析(xi)語句算法(fa)
4、數據訪問方法(大量案例演示):
.介紹執行計劃中的數據訪問方法以及各自的優缺點
.分析索引加速查詢的原理,確定索引與全表掃描到底如何選擇
.確定哪些因素影響索引訪問的性能
.索引適合建立在哪些字段上
.B*tree索引與位圖索引的選擇
.DML操作對索引的影響,以及如何設置索引的存儲參數和屬性
.索引無效的原因以及如何書寫語句以便選擇正確的執行計劃
.如何通過索引加快COUNT
.對比hash join、nest loop、sort merge這三種奪表連接算法的優劣
.對物化視圖進行分析,確定(ding)這種最(zui)快的(de)數據訪問方法的(de)特點和(he)使用場景,并通過(guo)案例(li)說明這些數據訪問方法對性能的(de)影響(xiang)
5、收集統計信息
.通過analyze或者dbms_stats方法收集統計信息
.理解各種統計信息對性能有何種影響
.分析綁定變量與統計信息的(de)關系,確定使用綁定變量優化解(jie)析最適合(he)的(de)場景(jing)
6、應用或者強制執行計劃)
通過(guo)(guo)對(dui)語句的(de)修改影(ying)響(xiang)(xiang)RBO下的(de)執(zhi)(zhi)行計劃(hua)(hua),通過(guo)(guo)修改參數(shu)值影(ying)響(xiang)(xiang)CBO生成的(de)執(zhi)(zhi)行計劃(hua)(hua),通過(guo)(guo)hints直接強制執(zhi)(zhi)行計劃(hua)(hua)
7、Sql語句優化經驗
將實際經驗中總結出(chu)的Sql使用(yong)方法和經驗進行講解,讓大(da)家(jia)了解什(shen)么樣的Sql語句(ju)(ju)是(shi)比較好的語句(ju)(ju),以及(ji)如何判斷(duan)語句(ju)(ju)性能(neng)的問題
培訓師介紹
李老(lao)師擅長Oracle數(shu)據(ju)(ju)庫(ku)(ku)的(de)應用需求分析、架構設計(ji)、數(shu)據(ju)(ju)建模、數(shu)據(ju)(ju)庫(ku)(ku)管理、性能優(you)化、災難恢(hui)復等,服務(wu)(wu)客戶(hu)涉及金(jin)融、電信、稅務(wu)(wu)、公安、電力、民航(hang)、鐵(tie)路(lu)等行業(ye),為各行業(ye)客戶(hu)設計(ji)部署穩定的(de)系統(tong)架構,解決各種數(shu)據(ju)(ju)庫(ku)(ku)疑難故障,優(you)化數(shu)據(ju)(ju)庫(ku)(ku)應用系統(tong)性能,保證客戶(hu)數(shu)據(ju)(ju)庫(ku)(ku)的(de)正常運行。基(ji)于多年的(de)工(gong)(gong)作經歷,李老(lao)師對Oracle數(shu)據(ju)(ju)庫(ku)(ku)的(de)設計(ji)、優(you)化、管理、開發等各項工(gong)(gong)作具有獨到的(de)見解和(he)豐富的(de)經驗。
Oracle 應用優化培訓課程
轉載://citymember.cn/gkk_detail/19226.html
已(yi)開課時(shi)間Have start time
培訓開發內訓
- 崗位經驗萃取三級五步工作坊 鄭少華(hua)
- 《課程開發及案例萃取》 史明
- 案例開發與撰寫 鄭少華
- 敏捷經驗萃取-課程內容開發 李華(
- 內訓師授課演繹技巧訓練 — 鄭少(shao)華
- 管理心理學:洞悉學員心理, 彭遠(yuan)軍(jun)
- 精妙教學設計-情景式教學設 李華(
- 經驗傳承——內訓師隊伍的建 崔艷(yan)蘋
- 六步微課開發速成法 鄭少(shao)華
- 課堂精彩呈現-卓越培訓師授 李華(
- 《企業培訓體系建設的流程和 史明
- Mini—TTT 課程開發 鄭少華