筆記---07

tom_xieym發表於2011-06-20

1. oralce優化器
rule—RBO,基於規則的優化器
choose—根據實際情況,如果資料字典中包含被引用的表的統計資料,即引用的物件已經被分析,則就使用CBO優化器,否則為RBO優化器。
ALL_rows—為CBO優化器使用的第一種具體的優化方式,是以資料的吞吐量為主要目標,使用最少的資源完成語句。
FIRST_ROWS--為CBO優化器使用的二種具體的優化方式,是以資料的響應時間為主要目標,以便快速查詢出開始的幾行資料。
FIRST_ROWS_【1|10|100|1000】--為CBO優化器使用的三種具體的優化方式,是以資料的響應時間減到最小的執行計劃,以便快速查詢出開始n行資料。
從ORACLE V7以來,optimizer_mode引數的預設設定應是‘choose’,即如果對已分析的表查詢的話選擇CBO,否則選擇RBO。在此種設定下,如果採用了CBO,則預設為CBO的all_rows模式。

2.影響執行計劃—可以hints來實現改變
1. 使用的優化器的型別
2. 基於代價的優化器的優化目標,是all_rows還是first_rows
3. 表的訪問路徑,是全表掃描,還是索引掃描,還是直接利用rowid
4. 表之間的連線型別
5. 表之間的連線順序
6. 語句的並行程度
採用最右最上最先執行的原則看層次關係,在同一級如果某個動作沒有子ID就最先執行

3. (16) 識別'低效執行'的SQL 語句:
雖然目前各種關於SQL 優化的圖形化工具層出不窮,但是寫出自己的SQL 工具來解決問題始
終是一個最好的方法:
SELECT EXECUTIONS , DISK_READS, BUFFER_GETS,
ROUND((BUFFER_GETS-DISK_READS)/BUFFER_GETS,2) Hit_radio,
ROUND(DISK_READS/EXECUTIONS,2) Reads_per_run,
SQL_TEXT
FROM V$SQLAREA
WHERE EXECUTIONS>0
AND BUFFER_GETS > 0
AND (BUFFER_GETS-DISK_READS)/BUFFER_GETS < 0.8
ORDER BY 4 DESC;

4. (1) Anylyze執行之後查詢資訊的字典:
DBA_TABLES and DBA_TAB_COLUMNS table storage within extents and blocks
DBA_HISTOGRAMS and INDEX_HISTOGRAM data about nonindexed and indexed column data distribution.
DBA_INDEXES and INDEX_STATS data about index within extents and blocks and indexation usefulness.

5. V$檢視和DBA_檢視
區別:
1. V$檢視通常是單數,DBA檢視通常是複數,例如V$DATAFILE與DBA_DATA_FILES;
2. 當資料庫處於Nomout或者Mount時,許多V$檢視已經是可用的,而DBA檢視必須在資料庫處於Open時才可用;
3. V$檢視查詢出來的資料多小寫,DBA檢視查詢出的資料通常大寫,所以在寫WHERE條件時需特別小心;
4. V$檢視中包含的是自例項啟動以來的動態資料,在資料庫關閉後會消失,查詢V$檢視時必須關注時效性,DBA檢視中包含的是靜態資料;
5. V$檢視的基表是X$表,X$表是存在於記憶體中的虛表,DBA檢視的基表是資料字典表,如SYS.OBJ$, SYS.FILE$等,這兩種基表都很少有文件。

最常用的V$檢視:
表名 描述
V$SGASTAT 顯示SGA元件大小的資訊
V$EVENT_NAME 顯示當前版本的所有等待事件
V$SYSTEM_EVENT 自例項啟動已來的等待事件
V$SESSION_EVENT 目前連線會話的等待事件
V$SESSION_WAIT 目前連線會話正在發生的等待事件
V$STATNAME 顯示當前版本的所有統計名稱
V$SYSSTAT 自例項啟動以來的統計
V$SESSTAT 目前連線會話的統計
V$SESSION 目前連線會話的資訊
V$WAITSTAT 塊競爭的統計

最常用的DBA檢視(有些欄位的值需要分析表或索引後才會有值):
表名 描述
DBA_TABLES 表的儲存,統計等
DBA_INDEXES 索引的儲存,統計等
INDEX_STATS 索引的深度和鍵值的離散度等
DBA_DATA_FILES 資料檔案的命名,位置,大小
DBA_SEGMENTS 段的相關資訊
DBA_HISTOGRAMS 表,索引的柱狀圖定義資訊

 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25850100/viewspace-700256/,如需轉載,請註明出處,否則將追究法律責任。

相關文章