聯繫我們

課程簡介

應用程式效能調整方法論

資料庫與執行個體架構

  • 伺服器程序
  • 記憶體結構(SGA, PGA)
  • 剖析與共用游標
  • 資料檔案、記錄檔、參數檔

執行計畫分析

  • 假設性計畫(EXPLAIN PLAN, SQLPlus AutoTrac XPlane)
  • 實際執行計畫(V $ SQL_PLAN, XPlane, AWR)

監控效能並找出瓶頸

  • 透過系統字典檢視表監控執行個體的目前狀態
  • 歷史字典的監控
  • 應用程式追蹤(SQLTrace, TkProf, TreSess)

最佳化程序

  • 成本最佳化的屬性與調整
  • 確定最佳化策略

透過以下方式控制基於成本的優化器工作:

  • Session 參數與執行個體層級設定
  • 提示(hints)
  • 查詢計畫模式

統計資訊與直方圖

  • 統計資訊與直方圖對效能的影響
  • 收集統計資訊與直方圖的方法
  • 統計資訊計數與估計策略
  • 統計資訊管理:封存、複製、編輯、自動收集、監控變更
  • 動態資料採樣(暫存表,複雜條件式)
  • 多欄位統計資訊,基於表達式
  • 系統統計資訊

資料庫的邏輯與實體結構

  • 資料表空間。
  • 區段(segments)
  • 延伸區(EXTENTS)
  • 區塊(Blocks)

資料儲存方法

  • 實體層的資料表面向
  • 暫存資料表
  • 索引化資料表
  • 外部資料表
  • 分割區資料表(span, letter, hash, 混合)
  • 資料表實體重新組織

物化檢視與 QUERY REWRITE 機制

資料索引方法

  • 建立 B-TREE 索引
  • 索引屬性
  • 索引類型:唯一值、多欄位、函數式、反向
  • 壓縮索引
  • 重建與合併索引
  • 虛擬索引
  • 私有與公用索引
  • Bitmap 索引與連接

案例研究 - 全表掃描資料

  • 位於資料表層級與區塊對讀取效能的影響
  • 載入資料的常规路徑與直接路徑
  • 條件式的順序

案例研究 - 透過索引存取資料

  • 讀取索引的方法(UNIQUE SCAN, RANGE SCAN, FULL SCAN, FAST FULL SCAN, MIN / MAX SCAN)
  • 使用函數式索引
  • 索引選擇性(Clustering Factor)
  • 多欄位索引與 SKIP SCAN
  • NULL 值與索引
  • 索引組織表(IOT)
  • 索引對 DML 作業的影響

案例研究 - 排序

  • 記憶體中的排序
  • 基於索引的排序
  • 語言環境相關的排序
  • 熵值對排序的影響(Clustering Factor)

案例研究 - 連接與子查詢

  • 連接類型:MERGE, HASH, NESTED LOOP
  • OLTP 與 OLAP 系統中的連接
  • 交換順序
  • 外部連接(Outer Joins)
  • 反連接(Anti-join)
  • 半連接(SEMI)
  • 簡單子查詢
  • 關聯式子查詢
  • 檢視表、WITH 子句

基於成本的最佳化器其他作業

  • Buffer Sort
  • INLIST
  • VIEW
  • FILTER
  • Count Stop Key
  • Result Cache

分散式查詢

  • 為使用 dblinks 閱讀查詢計畫
  • 選擇前導標記

平行處理

最低要求

  • 熟練 SQL 基礎知識並了解 Oracle 資料庫環境(建議完成 Oracle 11g 培訓 - Native SQL for Programmers - Workshops)
  • 具備與 Oracle 互動的實務經驗
 28 小時

客戶評論 (2)

課程分類