Oracle Exadata Database Machine – Write-Back Flash Cache

Use the Write-Back Flash Cache feature to leverage the Exadata Flash hardware and make Exadata Database Machine a faster system for Oracle Database Deployments.

Since its availability in 2008, Oracle Exadata has evolved from a data warehousing machine to a powerful solution for consolidation. With the addition of many features from version to version, the machine has become efficient in handling Data warehousing and OLTP workloads together. Achieving Extreme performance is always the goal for Exadata and its new features like Smart Scan, Smart Flash Cache, and Smart Flash Logging have made it possible. The latest feature, Write back flash cache, is another addition to the key enablers of Exadata’s Extreme Performance which again the combination of Hardware (Flash Drives) and Software (Exadata Storage Server Software) engineered together.

There are two key features of the Exadata Storage Server Software that leverage the Exadata Flash hardware and make the Exadata Database Machine such a fast system on which to deploy the Oracle Database. First is Exadata Smart Flash Cache which provides the capability to stage active database objects in flash. Second is the Exadata Smart Flash Logging which speeds the critical function of database logging. Lastly, the deployment of the Oracle Database requires mission critical resilience and the Exadata Storage Server Software in conjunction with the Oracle Database provides that.

Write back flash cache provides the ability to cache write I/Os directly to PCI flash in addition to read I/Os.If any application is write intensive and if one finds significant waits for "free buffer waits" or high IO times to check for write bottleneck in AWR reports, then write back flash cache is the best suitable option.

As long as the minimum software requirements are met, any Exadata hardware with flashcache (V2 and later) can take advantage of this feature.In release 11.2.3.2.0, FlashCache is “WriteThrough” by default. ALTER CELL command is used to change this mode to “WriteBack”.

Write-back flash cache significantly improves the write intensive operations because writing to flash cache is faster than writing to Hard disks. According to Oracle depending on application, on X3-2 machines write performance can be improved up to 20X IOPS than disk and 10X more write IOPs than to disk on V2 and X2. Cell Attribute “flashCacheMode” determines this mode, the possible values are: “WriteThrough” and “WriteBack”.

LIST CELL shows the current value.

CELLCLI> list cell attributes flashcachemode

CELLCLI> list cell detail

Write-Back Flash Cache:

Smart Flash cache provides the enhanced read and writes performance.

Exadata storage software version 11.2.3.2.1 is the minimum version required allowing writes to go into Smart Flash cache.

This means database writes first will happen on Flash Cache and database will gives acknowledgement.

Storage Cell Software writes them back onto hard disk.

Write-Back Flash Cache Benefits:

It improves the write intensive operations because writing to flash cache is much faster than writing to Hard disks.

Exadata X3-2 Database Machines write performance can be improved up to 20X IOPS than Hard disk.

Check that all of the flashcache are in the “normal” state and that no flash disks are in a degraded or critical state:

# dcli -g cell_group -l root cellcli -e list flashcache detail

Rolling Method:

(Assuming that RDBMS & ASM instances are UP and enabling Write-Back Flash Cache in One Cell Server at a time)

Login to Cell Server:

Step 1. Drop the flash cache on that cell

#cellcli –e drop flashcache

Step 2. Check the status of ASM if the grid disks go OFFLINE. The following command should return 'Yes' for the grid disks being listed:# cellcli -e list griddisk attributes name,asmmodestatus,asmdeactivationoutcome

Step 10. Check the status of the cell to confirm that it's now in WriteBack mode:# cellcli -e list cell detail | grepflashCacheMode

Step 11. Repeat these same steps again on the next cell to the FINAL cell. However, before taking another storage server offline, execute the following making sure 'asmdeactivationoutcome' displays YES:

CELLCLI> list metricdefinition attributes name, description where name like '.*_DIRTY‘

CD_BY_FC_DIRTY

Number of unflushed bytes cached in FLASHCACHE on a cell disk

FC_BY_DIRTY

Number of unflushed bytes in FlashCache

FC_BY_STALE_DIRTY

Number of unflushed bytes in FlashCache which cannot be flushed. Because cached disks are not accessible

GD_BY_FC_DIRTY

Number of unflushed bytes cached in FLASHCACHE for a grid disk

Deiby Gómez is an Expert DBA, with experience in Oracle Exadata Database Machine and High Availability Solutions . He gives conferences frequently on distinct Oracle events in Guatemala, among them OTN LAD Tour, Java Day, First Symposium of Oracle and many Universities. Oracle ACE since 2013. Deiby is the first Guatemalan to publish articles in Oracle LAD and constantly publishes articles on his blog www.oraclefromguatemala.com.gt.

YenugulaVenkataRaviKumar is a DBA with over 15 years of experience specialized in high availability database environments (RAC, Data Guard, among others), tuning and performance, migrations, backup and recovery, Oracle Exadata v1/v2/v3, expert in operating systems such as AIX, HP-UX y Linux . He has participated as lecturer in several Oracle events in India where he currently resides.He obtained an Oracle Certified Master (OCM) from Oracle Corporation in 2009.