SanDisk® Flash Building Blocks for Oracle Database 12c
Oracle OpenWorld is just around the corner, taking place from Oct 25 to 29. Like last year, I will be blogging about all the interesting and exciting SanDisk® Oracle solutions we have built for Oracle OpenWorld! So keep an eye out over the coming weeks, or sign up for our email updates, as I’ll be sharing more Oracle solution updates in the week before the event. This first blog will take a look at the SanDisk flash building block approach for accelerating performance on Oracle database 12c.
I like taking an analogy from the world of medicine. The primary goal of healthcare is to deliver the right treatment of the right drug to the right patient at the right time in order to achieve the ‘right’ outcome. Applying the same analogy for Oracle database 12c using SanDisk flash storage is “identifying the right application and deploying it with the right sizing of flash storage with the right approach to achieve the right performance outcome”.
Having worked on Oracle database deployments with various customer environments in retail, banking, and insurance industries, and helping them accelerate their databases in response to challenging requirements, I know how important it is to identify the right application for taking advantage of flash storage. Customer-facing applications involved in online shopping are very sensitive to application response time in order to ensure they deliver an acceptable customer experience. In contrast, Human Resource (HR) department applications with occasional performance demands in periods of employee appraisals and ranking can afford low to moderate response time.
From Short Stroking to Flash – Improving Database Performance
Databases for both OLTP and OLAP environments have consistently placed high demands on storage performance. Traditionally, a common method to manage these requirements was by short stroking a large number of hard drives – that is placing the data on the outer edge of a spinning disk to accelerate database storage performance. However, this method requires significant efforts, results in wasted, unused capacity and provides only marginal performance gains. The emergence of flash storage provides a better alternative that requires minimal efforts yet achieves significant performance gains. Flash storage provides high IOPS, is simple, reliable and requires minimal skills on the part of DBA (Database Administrator). This shifts the DBAs efforts from troubleshooting the database storage I/O issues to focus on optimizing stored procedures for improved application performance.
To assess the benefits of SanDisk flash storage and compare its ease of configuration to traditional short stroking of hard disks drives, we setup an Oracle 12c environment with both storage configurations.
Our testing configuration was comprised of an Oracle database 12c on a Lenovo System x3650 server with the Oracle Linux 6.5 Operating System. To simulate traditional practice wherein storage admins short stroke hard disk drives to increase disk performance, we employed the same technique by short stroking twenty-four (24) high performance 15K RPM hard drives to 50% of their capacity in a JBOD enclosure. On the flash side we utilized SanDisk Optimus™ SAS SSDs.
For both short stroked hard disks and Optimus SSDs, RAID 10 configuration was created to ensure redundancy and transactional database performance similar to typical production deployment. DATA and REDO ASM disk groups were created from this storage configuration for both storage environments. FRA ASM diskgroup was carved out from a separate pair of HDDs and kept constant for both HDD and SSD environments. For OLTP load testing, HammerDB tool was employed to populate the database and carryout transaction workload on Oracle 12c. Finally, we optimized all layers (Server/Storage/OS/database) to deliver a high performance platform and implemented best practices for setting up Oracle 12c on Oracle Linux. Figure 1 below shows the Oracle environment setup for both storage environments.
Solution Testing and Test Results
Solution testing consisted of running transactional workload on Oracle database 12c using the HammerDB client. Baseline performance results were captured on the JBOD enclosure consisting of 24 short stoked hard disk drives. The complete stack, including system, storage, database and HammerDB client performance details were collected for analysis. SanDisk flash implementation tests consisted of the following four approaches, for each we capture the performance data separately.
- The first testing was done by enabling Oracle Flash Cache feature with size of 100GB of SanDisk flash, while the complete 500GB database continued residing on hard disk drives.
- Continuing this hybrid model, in the second testing we moved the REDO log files to REDO SSD ASM disk group with Oracle Flash Cache feature enabled.
- In the third testing we selectively moved the frequently used data objects (tables and indexes) to a DATA disk group created on the SanDisk Optimus SSDs. The frequently used objects can be identified from Oracle AWR reports.
- In the last test, we configured an all-flash database environment, enabling full transaction schema on SanDisk flash storage.
As you can see from figure 2 the more flash we implemented at each step, the greater the performance benefits. Figure 3 highlights the benefits of latency reduction for single block access, latency that is DB File sequential reads and Redo log file sync latency. Identification and troubleshooting these latency issues is critical for Oracle transactional workloads.
Building Blocks – Testing Results and Flash Implementation
I would like to highlight few key points based on the test results and the cost benefit analysis:
- Oracle database 12c with just four SanDisk Optimus SSDs delivers a 538% performance benefit of improved transaction count over the JBOD enclosure with 24 short stroked high performance hard disk drives.
- SanDisk Optimus SSDs not only delivered a 538% transaction count performance advantage they also reduced the transaction workload latency by greater extent to improve database application response time.
- Flash is not a one-size-fits-all approach. Rather, it can be used within the application stack in various ways according to performance, capacity, and budget needs. Customers can start their flash implementation with simple Oracle Flash Cache feature and navigate to other flash implementation options by placing I/O intensive Oracle database storage objects on SanDisk SSDs based on application performance requirements
Every application has specific performance profile requirements needed to meet customer SLA requirements. Using the traditional approach of deploying a large number of hard disk drives leads to increasing costs, complexity in management and delivers only minimal performance gains. Utilizing a SanDisk Oracle building blocks approach can help meet the performance requirements for various application profiles with minimal effort and at lower cost. Identifying the right application, the right sizing and the right deployment of SanDisk flash storage for Oracle databases will result in getting the right performance outcome in the most cost efficient architecture.
Meet us at Oracle OpenWorld
Businesses of all sizes are looking to make the most out of their databases by doing more transactions, making faster decisions, and saving money. Flash memory is enabling all of this by enabling customers to slash costs and turn their database into productivity powerhouses.
Visit us at booth #811 to speak with our solution experts and learn how SanDisk enterprise flash software and hardware solutions take your Oracle environment to the next level. Learn more.