結(jié)合大規(guī)模數(shù)據(jù)庫實(shí)際案例講解,通過各種實(shí)際性能問題的診斷和解決演示貫穿始終
|
Oracle海量數(shù)據(jù)庫架構(gòu)原理 |
- 數(shù)據(jù)邏輯結(jié)構(gòu)規(guī)劃
- 持久存儲空間規(guī)劃
- 內(nèi)存規(guī)劃
- 物理分布
- 進(jìn)程劃分與關(guān)系
- 磁盤IO的規(guī)劃
|
Oracle的性能優(yōu)化 |
- 維護(hù)Alert_sid.log文件并使用該文件進(jìn)行優(yōu)化 ??
- 告警的通知及監(jiān)視配置、閥值的設(shè)定。 ??
- 后臺進(jìn)程跟蹤文件 ??
- 用戶跟蹤文件 ??
- 性能視圖、實(shí)用程序和工具 ??
- 動態(tài)故障排除 ??
- 收集相關(guān)的性能統(tǒng)計(jì)信息 ??
- 分析相關(guān)的性能視圖 ??
- 使用常見的優(yōu)化工具進(jìn)行優(yōu)化 ??
- 自動工作負(fù)載儲存庫(AWR)
|
數(shù)據(jù)庫參數(shù)的優(yōu)化 |
- Oracle數(shù)據(jù)庫中參數(shù)文件的演進(jìn)過程
- 參數(shù)文件的對比
- 參數(shù)的修改方式介紹
- 數(shù)據(jù)庫啟動過程時的內(nèi)部原理解析
|
內(nèi)存優(yōu)化 |
- 學(xué)習(xí)什么是內(nèi)存最基本的優(yōu)化方法
- 學(xué)習(xí)如何設(shè)定數(shù)據(jù)高速緩存區(qū)的大小
- 學(xué)習(xí)如何設(shè)定共享池的內(nèi)存
- 學(xué)習(xí)如何設(shè)定PGA的內(nèi)存調(diào)
- 學(xué)習(xí)如何設(shè)定測量緩存區(qū)的命中率
- 學(xué)習(xí)如何定義多池、使用多池、啟用多池
- 掌握使用調(diào)優(yōu)庫高速緩存的診斷工具
- 掌握使用調(diào)優(yōu)數(shù)據(jù)字典高速緩存的診斷工具
- 掌握使用重作日志緩沖區(qū)的診斷工具
|
存儲優(yōu)化 |
- 了解Oracle的存儲層次結(jié)構(gòu)
- 分析數(shù)據(jù)庫段、區(qū)、塊的存儲設(shè)置對于數(shù)據(jù)庫的數(shù)據(jù)訪問的性能影響
- 掌握HWM的含義和對性能的影響
- 找出存儲不合理的表和索引,將這些對象重組,從而得到更好的訪問性能
- 設(shè)置合理的塊空間參數(shù),以減少I/O數(shù)量并且合理的存儲數(shù)據(jù)
- 注意行鏈與行遷移對性能的影響,解決行遷移
|
海量數(shù)據(jù)庫的優(yōu)化
數(shù)據(jù)冗余 |
- 數(shù)據(jù)鏡像
- 讀寫分離
- 水平擴(kuò)展與負(fù)載均衡
- 垂直分割與水平分割
- 內(nèi)存數(shù)據(jù)庫
|
Oracle CBO優(yōu)化器決策 |
- 統(tǒng)計(jì)信息的收集
- 事件10053
- 跟蹤文件分析
- 優(yōu)化器參數(shù)設(shè)置
- 訪問路徑成本cost計(jì)算比較
- CBO各種類型成本計(jì)算公式如下
- 統(tǒng)計(jì)信息對CBO的影響
|
Oracle數(shù)據(jù)塊組成與解析 |
- 數(shù)據(jù)塊空閑空間的管理
- db_block_size大小設(shè)置與性能
- db_multiblock_read_count的優(yōu)化
- 熱點(diǎn)塊問題的優(yōu)化
?
|
視圖和存儲過程的編寫規(guī)范 |
- 連續(xù)易讀容易管理的書寫方式
- 命名規(guī)范
- 程序開始處規(guī)范化
- end語句中寫入結(jié)束module的名稱
- 使用動詞短語命名存儲過程,名詞命名函數(shù)短語
- 使用labels命名塊和循環(huán)
- 顯式使用括號
- 代碼豎向?qū)R
|
PL/SQL其他編寫技巧
|
- 使用 %TYPE 和 %ROWTYPE.來定義變量
- 使用CONSTANT 定義不變的變量
- 不要過度使用變量
- 清除沒有使用的變量
- 程序異常結(jié)束的時候?qū)ψ兞窟M(jìn)行清理
- 避免變量、數(shù)據(jù)類型的隱式轉(zhuǎn)換
- 使用 ELSIF 來提高語句效率
- RAISE 用來觸發(fā)錯誤異常,而不是用來進(jìn)行流程控制
|