聯繫我們

課程簡介

應用程式調優方法論

資料庫與執行個體架構

  • 伺服器程序
  • 記憶體結構(SGA、PGA)
  • 解析與共享游標
  • 資料檔案、日誌檔案、參數檔案

命令執行計畫分析

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

效能監控與過程瓶頸識別

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

最佳化過程

  • 成本最佳化特性與受控屬性
  • 確定最佳化目標

透過以下方式控制成本最佳化工具(Cost-based Optimizer):

  • 會話參數與執行個體參數
  • 提示(Hints)
  • 查詢計畫模式

統計資料與直方圖

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

資料庫的邏輯與物理結構

  • 表空間
  • 區段(Segments)
  • 延伸(EXTENTS)
  • 區塊(Blocks)

資料儲存方法

  • 表的物理面向
  • 暫存表
  • 索引表(Index-organized Tables)
  • 外部表
  • 分區表(Range、List、Hash、混合)
  • 表的物理重組

物化檢視與 QUERY REWRITE 機制

資料索引方法

  • 建置 B-Tree 索引
  • 索引屬性
  • 索引類型:唯一、多欄、函數、反向
  • 索引壓縮
  • 索引重建與合併
  • 虛擬索引
  • 私有索引與公開索引
  • 位圖索引與連結(Bitmap Indexes and Junction)

案例研究 - 資料全域掃描(Full-scan)

  • 表層級與區塊層級效能讀取中位置排序的影響
  • 常規路徑與直接路徑資料載入
  • 預測式順序

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

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

案例研究 - 排序(Sorting)

  • 記憶體排序
  • 索引排序
  • 語言排序
  • 熵對排序的影響(Clustering Factor)

案例研究 - 聯結與子查詢

  • 聯結類型:MERGE、HASH、NESTED LOOP
  • OLTP 與 OLAP 系統中的聯結
  • 順序切換
  • 外部聯結(Outer Joins)
  • 反聯結(Anti-join)
  • 半聯結(Semi-joins)
  • 簡單子查詢
  • 相關子查詢
  • 檢視與 WITH 子句

成本最佳化工具的其他操作

  • 緩衝排序(Buffer Sort)
  • INLIST
  • 檢視(VIEW)
  • 過濾(FILTER)
  • Count Stop Key
  • 結果快取(Result Cache)

分散式查詢

  • 讀取使用 DB-Links 的查詢計畫
  • 選擇主導表(Leading mark)

並行處理

最低要求

  • 熟練使用 SQL 基礎知識,並熟悉 Oracle 資料庫環境(建議已完成「程式設計師原生 SQL - 工作坊」培訓,特別是 Oracle 11g)。
  • 具備 Oracle 實務操作經驗。
 28 小時

人數


每位參與者的報價

客戶評論 (2)

即將到來的課程

課程分類