Oracle11gR2 Smart Flash Cache測試說明
1. Flash Cache 功能介紹
在oracle11gR2中,Oracle提供了設定FLASH CACHE的功能,該特性允許使用SSD硬碟作為Buffer Cache的二級快取,以在磁碟和記憶體之間增加一級緩衝,提升資料訪問效能。這個功能其實是EXADATA引入,這也是EXADATA提高IO效能的又一利器。不過即使不是EXADATA,在11.2中也可以設定該功能,前提要求作業系統必須是oracle enterprise linux(簡稱OEL)或者solaris,也就是說只支援Oracle公司自己的作業系統。
Flash Cache 的功能只會提高磁碟讀的效能,因為Dirty blocks還是會直接寫到磁碟而不會在SSD中,透過下面的圖可以很好的理解它的工作原理
1. 首先當有讀的請求發生時,磁碟資料會被讀到buffer
2. 有寫的工作完成時,會將Dirty blocks直接寫入磁碟
3. 將SGA中透過LRU移出的資料寫到flash cache中,下次有讀的請求時會透過flash cache寫入記憶體
2. Oracle 版本及補丁
oracle 的smart flash cache功能 在OEL平臺上對DB軟體打了快閃記憶體補丁後可以使用(solaris上不需要打),具體說明如下:
OS |
Oracle |
補丁 |
是否正常 |
備註 |
OEL6.4 |
11.2.0.1 |
p8974084 |
是 |
|
11.2.0.3 |
p12949806 |
是 |
|
|
11.2.0.4 |
無 |
是 |
|
|
OEL7 |
11.2.0.1 |
p8974084 |
ORA-00439: feature not enabled: Server Flash Cache |
內部bug,暫無補丁 |
11.2.0.3 |
p12949806 |
ORA-00439: feature not enabled: Server Flash Cache |
內部bug,暫無補丁 |
|
11.2.0.4 |
無 |
ORA-00439: feature not enabled: Server Flash Cache |
內部bug,暫無補丁 |
3. 修改 Flash Cache 引數
開啟Flash Cache功能需要修改兩個引數(db_flash_cache_file和db_flash_cache_size),而且需要重啟生效;支援的方式分為三種,包括檔案系統、裸裝置、ASM。
SQL> show parameter flash_cache
NAME TYPE VALUE
------------------- ----------- --------------------
db_flash_cache_file string
db_flash_cache_size big integer 0
db_flash_cache_file的大小一般推薦2-10倍的buffer cache(不能小於2倍),如果使用ASMM, 2-10倍的SGA_TARGET,這樣才能達到效果;若將db_flash_cache_size設為0 可以disable flash cache,再設回來可以enable. 但不允許動態修改db_flash_cache_size的值;對於RAC的環境, 需要在每個instance上面都設定以上兩個引數,並且不能使用同一個file。
修改方法
1. 檔案系統
SQL> alter system set db_flash_cache_file='/testfs/cache.dbf' scope=spfile;
SQL> alter system set db_flash_cache_size=8192M scope=spfile;
2. 裸裝置
SQL> alter system set db_flash_cache_file='/dev/raw/raw1' scope=spfile;
SQL> alter system set db_flash_cache_size=8192M scope=spfile;
3.ASM
SQL> alter system set db_flash_cache_file='+ASM/DB/cache.dbf ' scope=spfile;
SQL> alter system set db_flash_cache_size=8192M scope=spfile;
4. 檢視 flash cache 使用情況
透過以下SQL判斷flash cache是否在用
SELECT SUM (CASE WHEN b.status LIKE 'flash%' THEN 1 END) flash_blocks, SUM (CASE WHEN b.status LIKE 'flash%' THEN 0 else 1 END) cache_blocks,count(*) total_blocks FROM v$bh b;
select name,value from v$sysstat where name in ('physical read flash cache hits','physical reads','consistent gets','db block gets','flash cache insert');
5. 結論
Oracle smart flash cache 功能雖然能很大的提高效率,但目前flash cache功能的成熟度不夠理想,目前在配置時遇到很多bug(本文只列出一部分),後期使用是否還有bug還是未知,但是SSD硬碟確實對磁碟的I/O有很大效能的提高。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26964624/viewspace-2564393/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- How To Size the Database Smart Flash Cache (Doc ID 1317950.1)Database
- Oracle Sequence Cache 引數說明Oracle
- SoapUI壓力測試的指標項說明UI指標
- cursor: pin S簡單說明以及測試、解決
- TestLink測試用例管理工具使用說明
- 【測試者家園】sql server系統表詳細說明SQLServer
- zt_Oracle Library cache 內部機制 說明Oracle
- FLASH CACHE IN ORACLE 11GOracle
- Oracle中sequence cache的測試Oracle
- 介面壓測實踐-壓力測試常見引數解釋說明
- 簡單的效能測試說明為什麼Go比Java快?GoJava
- Oracle Golden Gate 有關Data Pump 重置 trail 序列號 測試 說明OracleGoAI
- 《軟體自動化測試成功之道》附帶的光碟說明
- oracle11gR2的資料庫示例使用者安裝說明Oracle資料庫
- oracle11gR2 table compress一點測試Oracle
- Oracle 11.2.0.1 Result Cache 測試 - 1Oracle
- Oracle 11.2.0.1 Result Cache 測試 - 5Oracle
- Oracle 11.2.0.1 Result Cache 測試 - 6Oracle
- Oracle 11.2.0.1 Result Cache 測試 - 7Oracle
- Oracle 11.2.0.1 Result Cache 測試 - 8Oracle
- Oracle 11.2.0.1 Result Cache 測試 - 9Oracle
- Oracle 11.2.0.1 Result Cache 測試 - 10Oracle
- Exadata Flash Cache 簡介(二)
- (轉)資料庫Flash Cache(II)資料庫
- 從備份集恢復歸檔日誌的測試與說明
- oracle11gR2 RAC 環境測試修改節點VIP的測試操作記錄Oracle
- 騰訊出品小程式自動化測試框架【Minium】系列(二)專案配置及測試套件使用說明框架套件
- Oracle 11.2.0.1 Result Cache 測試 - 12 DBMS_RESULT_CACHE管理包Oracle
- 寫Cache快取物件測試例項快取物件
- Swift中使用CADisplayLink測試APP的FPS(附邏輯說明)SwiftAPP
- 看這裡!移動應用測試必備六種型別說明型別
- Oracle 11.2.0.1 Result Cache 測試 - 11 各種場景測試結果Oracle
- Oracle11gr2新增表的RESULT CACHE屬性Oracle
- SMART Utility for mac (硬碟檢測)Mac硬碟
- Oracle 11.2.0.1 Result Cache 測試 - 2 引數Oracle
- oracle11g RESULT_CACHE測試 (一)Oracle
- SQLServer2000 JDBC驅動的完整安裝及測試說明 (轉)SQLServerJDBC
- Oracle中passwordfile的作用及說明考試大全Oracle