ORACLE filesystemio_options引數詳解及IO場景測試
前言
filesystemio_options 控制著作業系統io的設定。該引數只作用於檔案系統。它有四個值可供設定,分別是:{none | setall | directIO | asynch }。該引數預設值受資料庫版本和作業系統型別及作業系統版本影響。
從oracle 10G開始,對於ASM磁碟管理的情況,filesystem_option引數不作用於ASM磁碟管理的資料庫。
I/O 說明
說明
在Synchronous I/O 的機制下,若一個Oracle程式想呼叫一個I/O請求,那麼必須等待其他請求完成後才能呼叫。例如,如果它發起對幾個資料塊的讀取,那麼程式就必須等待它把所有資料塊都讀取到記憶體之後,才能進行下一個動作。
說明
在Asynchronous I/O 的機制下,程式可以與I/O請求同時工作。對已經讀取的資料塊,可以直接進行處理,不用等待所有資料塊全部載入完畢再處理。
說明
在buffer I/O機制下,作業系統有自己的一套用於維護磁碟資料的cache,而不是直接從process buffer讀取或者寫入。其原理是從磁碟中讀取資料寫入cache,然後複製至process buffer。或者從process buffer中複製至cache然後寫入到磁碟中。
說明
Direct I/O 能讓所有的讀和寫的請求直接來自於磁碟,繞過作業系統快取。
在ASM磁碟管理下,為了防止叢集管理的資料庫的資料損壞,必須直接使用Direct I/O。
對於使用檔案系統的資料庫環境,Oracle發出的讀取請求可以從OS緩衝區中得到滿足,而一旦啟用direct I/O又不增加SGA大小,將導致磁碟讀取需要更多的時間才能完成。為了充分利用direct I/O,需要將用於OS快取部分增加到資料庫SGA中。
filesystemio_options 和liao 引數說明
disk_asynch_io 是相當於主開關,不管是檔案系統還是裸裝置,它都控制著非同步io的開啟與關閉,filesystemio_options是子開關,控制著檔案系統上的非同步io。如果資料庫使用了檔案系統, 那麼I/O只受filesystemio_options控制。
的情況
RAC 環境下,direct I/O是預設開啟的。並且在ASM磁碟管理下,I/O肯定是非同步的,而且直接做的是direct I/O。所以,對於ASM磁碟管理,不用設定filesystemio_options,只要設定合理的SGA和PGA大小即可。(詳情見mos:Document 751463.1)
單機的情況
在檔案系統檔案管理的情況下,那麼非同步I/O的開啟則受filesystemio_options的控制影響。
以下是Oracle官方檔案系統管理的情況下,使用同/非同步IO,快取/直接IO的設定矩陣說明。
檔案系統設為開啟非同步和直接IO那麼就選setall選項,開啟同步和直接IO就選directIO選項。
引數配置說明
1 、單機環境下,非同步IO受filesystemio_options控制,此引數用於特定的平臺,各個作業系統平臺預設值不一樣,linux平臺預設是none,更改選項語句格式:
ALTER SYSTEM SET FILESYSTEMIO_OPTIONS={SETALL|ASYNCH| DIRECTIO|NONE}SCOPE=SPFILE;
2 、RAC環境下,Asynchronous IO受DISK_ASYNCH_IO引數控制,預設是TRUE,更改選項語句格式:
ALTER SYSTEM SET DISK_ASYNCH_IO={FALSE|TRUE} SCOPE=SPFILE;
Oracle 建議您將此引數設定為其預設值。但是,如果asynchronous I/O 效能不穩定,則可以將此引數設定為false,以禁用asynchronous I/O 。如果您的平臺不支援磁碟asynchronous I/O ,則此引數不起作用。
引數配置建議
在linux下FILESYSTEMIO_OPTIONS引數配置建議:
filesystem_option 引數,只有在9i,10G的時代,AIX、HP小機,使用祼裝置的情況下設定filesystem_option為非同步+直接I/O,電信也是基於這樣的環境下設定該引數,10G開始,有了ASM,filesystem_option可以由Oracle自動配置,特別是11G及以上都是預設none,而對於檔案系統,不建設設定為非同步+直接I/O。
setall : 儲存I/O效能良好的情況下設定,可以大幅提升I/O總體效能,尤其是寫效能,如果多套資料庫公用一套儲存則不建議設定此引數。使用場景除了小機和裸裝置,檔案系統如果要開啟的話,需要具備兩點:1、把檔案系統的cache記憶體加到SGA上去,變向的保證快取量,2、修改前作業系統磁碟效能指標正常不存在瓶頸。磁碟監控的主要iostat指標如下:
使用率(%util ) :是指磁碟 I/O 的百分比。過高的使用率(比如達到 80% 及以上),通常意味著磁碟 I/O 存在效能瓶頸。
佇列長度(aqu-sz ): 平均請求佇列長度
IOPS (r/s+ w/s ): 是指每秒的 I/O 請求數。
吞吐量(rkB/s+wkB/s ) :是指每秒的 I/O 請求大小。
響應時間(r_await+w_await ) :是指 I/O 請求從發出到收到響應的間隔時間。
* 對於 aqu-sz ,r/s+ w/s ,rkB/s+wkB/s ,r_await+w_await 的幾個指標,基線是每個環境都不一樣的,如果要定基線找幾個環境開始監控這些指標,作為正常時間段的基線。
注意:除了作業系統層面指標出現大幅異常,我們同樣需要注意資料庫層面的等待事件(db file sequential/scattered read,direct path read/write等),特別需要注意開啟前後與I/O相關的等待響應時間是否發生大幅變化。
directIO : 直接繞過快取,使用directIO引數意味著Synchronous I/O 需要等待其他請求完成後才能呼叫,對儲存壓力較大。且消耗CPU資源,不建議在生產上設定此引數。
asynch : 非同步IO可以提高效能,但是顯而易見的是對磁碟處理IO能力有較高要求,否則提交的處理請求多,處理能力跟不上,根本無法達到提高效能的要求。(開啟前請先檢查磁碟IO處理能力,若磁碟效能已在臨界值,開啟後總體效能反而會有明顯下降)
None : 預設引數,由Oracle自身調節,有較好的綜合表現。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23732248/viewspace-2887280/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle非同步IO之filesystemio_options引數Oracle非同步
- ab壓力測試命令及引數詳解
- Oracle FILESYSTEMIO_OPTIONS初始化引數Oracle
- Oracle JDBC ResultSet引數測試OracleJDBC
- Oracle UNDO引數詳解Oracle
- mysqldump常見使用場景及引數參考MySql
- Oracle 11.2.0.1 Result Cache 測試 - 3 引數及使用,限制Oracle
- MySQL 5.6 innodb_io_capacity引數效能測試MySql
- oracle rac 核心引數詳解Oracle
- oracle RMAN引數配置詳解Oracle
- ORACLE DG之引數詳解Oracle
- 《Oracle EXP工具QUERY引數使用方法和限制條件》-使用場景-對比測試-可下載Oracle
- 詳解數倉中sequence的應用場景及最佳化
- curl常用引數詳解及示例
- Oracle ORION IO 測試工具Oracle
- 介面測試 - 引數測試
- 效能測試場景提取
- 【RAC】Oracle RAC上線測試場景介紹Oracle
- 單元測試 - 測試場景記錄
- Oracle GoldenGate常用引數詳解OracleGo
- 詳解Oracle建立表的引數Oracle
- 轉:oracle EXP /IMP引數詳解Oracle
- Oracle 11.2.0.1 Result Cache 測試 - 11 各種場景測試結果Oracle
- ORACLE sequence各引數及建立修改刪除使用詳解示例Oracle
- cassandra 效能測試場景一
- Oracle 11.2.0.1 Result Cache 測試 - 2 引數Oracle
- 求助,jmeter 壓測 ,業務場景測試JMeter
- Oracle utl_file_dir引數詳解Oracle
- Oracle CLUSTER_INTERCONNECTS引數詳解Oracle
- Oracle LISTENER監聽檔案引數詳解及Lsnrctl命令綜述Oracle
- 引數繫結在PHP程式碼測試中的重要作用與應用場景PHP
- 水煮Oracle——《Oracle pfile/spfile引數檔案詳解Oracle
- linux expr命令引數及用法詳解Linux
- curl庫pycurl例項及引數詳解
- 討論:交叉測試策略的適用場景及對測試人員的要求
- 非同步IO,同步IO,Direct IO,FILESYSTEMIO_OPTIONS, DISK_ASYNCH_IO [final]非同步
- 效能測試混合場景計算
- 壓力測試sysbench安裝及引數介紹