SlideShare une entreprise Scribd logo
1  sur  10
Using ASM Preferred Read Groups in Oracle to Maximize
Performance
Michael R. Ault, Oracle Guru, TMS Inc.

   Introduction
      In today’s 24X7 fast paced world your Oracle database system is a lynch pin that holds the fabric of your
      company together. The Oracle system must perform well, be reliable and be resilient. But what do these
      requirements entail?
      Performance – Queries, reports and screens must return in a reasonable period of time to the requestor.
      What is reasonable is negotiable in some cases, in others your feet are held to the fires of various service
      level agreements (SLA).
      Reliability – A single system fault should not be able to bring the system down. In many industries loss of
      even a few minutes of processing impacts the bottom line.
      Cost – A solution should deliver performance and reliability at a reasonable cost.
      In this paper we will show a new Oracle system architecture that fulfills all of the above requirements. By
      leveraging the available features of Oracle itself, and new technologies available from TMS, a high-
      performance, reliable and cost effective system can easily be constructed.
      Let’s look at the different aspects of performance, reliability and cost and examine what Oracle and TMS
      technologies should be used to fulfill their requirements.

   Performance
      Most modern servers provide adequate CPU and memory resources. Rapid technological advances
      governed by Moore’s law have allowed more memory and more powerful processors to be economically
      available every year. In most of the performance related issues we have come up against the issues that
      most affect the performance of a database are related to the IO subsystem. Figure 1 shows how CPU speeds
      have increased while disk access times have not kept up.


                                                    Relative Improvement Over Time


                          30


                          25


                          20

                                                                                                     Processor Speeds
                          15
                                                                                                     Disk Access Times

                          10


                           5


                           0
                               1995   1996   1997   1998   1999   2000   2001   2002   2003   2004


                                  Figure 1: Relative CPU and Disk Performance
IO is the Biggest Issue
For many years the IO subsystem for any computer has been its weakest link, requiring many complex
techniques to be used to squeeze the last bit of performance from disk drives. Disk drives are generally
limited to 15,000 rotations per minute (RPM) based on power, motor, and physics limitations. Since the
main component of a disk drive’s latency is its rotational latency this limits disk drive raw response
performance to between 2-5 milliseconds. Figure 2 shows the disks and head assembly from a 10K RPM,
74 GB large form factor drive.




                                 Figure 1: Disks and Head Assembly

  How Do Disk Systems Compensate?
The only way to boost the IO capability of disk based systems is to increase the number of active disks.
Each disk can sustain a maximum of 200 random IO per second (IOPS.) So if your system needs to perform
10,000 IOPS to maintain performance you will need at least 50 disk drives just to maintain a 2-5
millisecond response time. If you have a large number of simultaneous users or do many full table scans or
multi-block accesses then this number of needed drives increases dramatically. In the TPC-H data
warehouse benchmark for example, the number of drives needed to get adequate performance may result in
the purchase of 30-40 times the needed storage capacity simply to get the needed IOPS to support the
needed IO capacity.
In many cases we see that 10-20 percent of the database is accounting for 90 percent of the IOPS. These
IOPS intensive data tables and indexes “poison” the IO subsystem resulting in slow performance for the
entire application.

  Solid State Disks
With the performance gap between processors and hard drive-based storage systems widening, solid state
storage is entering the limelight. Because solid state systems rely on memory chips for data storage, they
offer unprecedented access times and tremendously high IOPS rates, which narrow the gap between the
processor speeds and storage speeds.
Solid state disks are a proven technology – they have been designed and manufactured for over 31 years.
Strictly, a solid state disk (or SSD) is any storage device that does not rely on mechanical parts to input and
output data. Typically, however, the term refers to storage devices that use memory (DDR or Flash) as the
primary storage media. Data is stored directly on memory chips and accessed from them. This results in
storage speeds far greater than is even theoretically possible with conventional, magnetic storage devices.
To fully make use of this speed, SSDs connect to servers or networks through multiple high-speed
channels. A 5 terabyte SSD is shown in Figure 3.
Figure 2: The 5 Terabyte SSD Solid State Disk

Reliability
 Reliability means that no single component failure will result in loss of the system. Usually we meet
 reliability by means of redundant components: multiple CPUS, multiple power supplies, multiple fans,
 multiple HBAs, and redundant storage. With Oracle, Oracle Real Application Clusters (RAC) can be
 deployed with two or more servers to ensure a database doesn’t go down in the event of a total server
 failure. Of course HVAC and power must also be redundant, but those are beyond the scope of this paper.
 A common approach to ensuring reliability in the storage has been deploying SAN systems with redundant
 storage “heads”. Each head has connections to the servers and to the storage, and the ability to create a
 RAID layout across the disks. This approach is effective with lots of storage that is used to support many
 applications, but it is less effective when you are focusing on a single important application such as a large
 Oracle database. This is because the storage heads tend to be very expensive and add latency to every IO
 access - a bad proposition when the storage is SSD.

   Oracle Automatic Storage Management
 Oracle introduced Automatic Storage Management (ASM) in 10g as a compelling option to allow Oracle to
 provide storage redundancy and eliminate the expense of redundant storage heads. ASM provides striping
 and mirroring capabilities across multiple storage devices. This allows any storage component to fail
 without data loss and full redundancy can quickly be restored through automatic rebalancing. A new
 feature was added in Oracle 11g ASM that enables extremely cost effective SSD usage. The Preferred
 Mirror Read option enables a mirror to be created between storage devices with different performance
 characteristics. Writes are sent to both storage devices to ensure redundancy is maintained, but reads are
 only serviced by the storage that is specified as preferred. This enables SSDs to be mirrored with
 traditional storage when the read IO performance is the primary concern.

Cost
 Solid State disks have an interested combination of characteristics: they are expensive for capacity but they
 are extremely inexpensive for performance. To leverage SSDs effectively the capacity used must be limited
 to just what is necessary. In the architecture laid out in this document SSDs are used in combination with
 disks in order to control the cost. This is done without sacrificing performance or reliability, all data is
 mirrored to a separate physical enclosure, and every time Oracle must wait on an IO request it will be
 delivered at SSD speed.

Other Performance Limiters in Oracle
 Generally speaking Oracle is read latency sensitive and write latency insensitive when it comes to data. If
 you delay data reads Oracle performance will suffer. In the case of data writes Oracle uses a lazy-write
 methodology known as “delayed block clean-out.” Delayed block clean-out simply means than Oracle only
 writes out a data block back to the IO subsystem when the block is needed by another process for a different
 bit of data. Thus, a block may reside in the cache for several seconds before it is actually written back to
 disk after an Oracle process is finished with it.
           However, there are three types of writes that need to be accomplished quickly, these are:
•    Redo block writes
 •    Undo block writes
 •    Temporary block writes
 Each of the above writes can result in a transaction waiting for the write to complete before it continues.
 High latency writes on redo, undo and temporary blocks cannot be tolerated in a busy system. In cases
 where there as a large number of commits per second, redo writes can be a great concern. In situations
 where there may be a large number of rollbacks, undo blocks become a read and write concern and any
 temporary IO that is excessive is always a concern for any database.
 Redo and Undo are usually sequential writes and whenever possible should be isolated from other forms of
 IO. Temporary tablespace IO, even in system with zero disk sorts, can be a major contributor to the IO
 picture. Remember that temporary IO is used not just for sorts, but also for hash joins, bitmap operations
 and temporary table operations that exceed PGA limits. We have seen temporary IO be the major source of
 IO in a system even when there were zero sorts going to disk.

Optimized Architecture for ASM PRG
 Given these concerns: performance, reliability and resiliency, how can we create a single system that will
 fulfill all of the requirements in each area and still perform? The only way is to combine the best features of
 Oracle in an architecture where disk and SSD are used in harmony.

     Components of Architecture
 What do we need to use with this ultimate system?
 Hardware
      1.     SSD (prefer highest speed and capacity available.
      2.     Disks – Enterprise 10K RPM SFF SAS drives
      3.     Servers – Lots of memory to hold the most active dataset and dirty data buffers.
 Oracle 11g Features:
      1. ASM – Automatic Storage Management
      2. RAC – Real Application Clusters

     Server Redundancy
 At the server level, the system will have 2 or more multi-CPU servers configured with plenty of memory to
 serve hold the frequently reused database segments and dirty data buffers. The servers utilize low latency,
 high capacity interconnections and Oracle RAC is utilized between the servers to handle server failure. At a
 minimum 2 servers are required, however, for maximum redundancy with no loss of capacity in the event
 of a single server failure N+1 servers are required where N is the number of servers needed for performance
 and scalability.

     IO Subsystem Tiers
 In addition to Oracle features, we need to utilize a multi-tier IO subsystem. Figure 4 shows the storage
 pyramid indicating the various tiers.
Figure 3: Tiered Storage Pyramid

 In order to meet our performance criteria, our write sensitive areas: redo, undo and temp, need to be on low-
 latency high bandwidth storage. The best response time for writes is provided by battery backed RAM. This
 is provided by the SSD, the best configuration uses RAM buffers with super capacitor backing to provide
 80 microsecond write times. The bulk Flash storage enables the draining of the RAM buffers at up to
 250,000 writes/s and ensures that the read performance of Tier 0 is excellent. To ensure there is no single
 point of failure, this Tier is mirrored across two separate SSD chassis. The capacity of this tier is limited as
 the circular logs in Oracle require performance but not a tremendous amount of capacity.
 The next tier, tier 1, is for the database tables and indexes. This tier leverages the low latency read
 performance of the SSD (0.25 ms), and the cost effectiveness of disks for capacity and limited IO/s
 requirements. In this tier the SSD’s are placed into an ASM preferred read mirror with traditional disks. In
 a preferred read mirror, the non-preferred member of the mirror (the disks) receives only writes. This tier
 only contains write-insensitive files so the latency of the writes to this tier does not matter. However, this
 does not mean that the write throughput of this tier isn’t important. This tier must be capable of emptying
 the Oracle’s cache at the same rate that it is being filled by the application. This means that the write IOPS
 and Bandwidth of this tier must be respectable. This requires the number disks in this tier to be sized for
 aggregate write IOPS, not just to meet the capacity required for a mirror of the SSDs.
 The last tier, Tier 2, consists of storage for backup and is purely disk based. This tier is made from the
 extra capacity left over from the disks used in tier 1. The extra capacity is aggregated and mirrored with
 ASM. Since the performance of the disks used by Tier 1 when the database is under heavy load, this tier is
 used to store the nightly backup of the database. Disks are partitioned such that the high performance areas
 are used by the PRG mirror.

Let’s See It
 Figure 5 shows a diagram of this architecture.
Figure 4: Architecture

  Architecture - In Depth
 As you can see in Figure 5 the architecture is configured with 4 servers. This provides the database with 32
 CPU cores for processing and 288 GB of memory for the frequently reused data and dirty data buffer
 waiting to be written out. With this much memory available to the database every blocking IO to disk
 needs to be handled at SSD speed.
 In our SAN setup we see that two 5-terabyte SSDs and 96-300 GB disks are provided. Each SSD provides
 up to 5 TB of capacity (10 TB total), 250,000 IOPS (500,000 IOPS total) at a latency of 0.08 ms for writes
 and 0.25 milliseconds for reads. Each SSD’s 5 TB capacity is divided into a 500 GB section and a 4.5 TB
 section used for Tier 0 and Tier 1. In Tier 0 the two 500 GB sections are mirrored with ASM and used for
 redo, undo, and Temp. The remaining spaces is aggregated with ASM and are mirrored to disk through
 Oracle 11g ASM’s preferred mirror read technology to provide 9 TB of fully redundant capacity. Thus
 there is no disk IO time penalty for reads and writes are buffered by the larger RAM buffer cache and
 written out to the RamSan/Disk mirror by the lazy writer process. The disks are 96 enterprise SAS drives
 capable of providing 20,000 IOPS at 5-10 ms latency. Each disk is divided into a small 93 GB partition and
 a large 206 GB partition. The 96-93 GB partitions are grouped with ASM and used for the disk half of the
 tier 1 mirror (9 TB). The larger 206 GB partitions are grouped then mirrored providing 9.9 TB to hold a
 full backup of the database.


 This Optimized ASM-PRM architecture allows every blocking IO to be served from low latency SSD while
 disks provide redundancy and backup to keep costs reasonable.

Performance
 During operation the database now serves reads from high speed, low latency SSD via the preferred read
 mirror. Writes to logs and other write sensitive Oracle structures are to the dedicated SSD mirror while
 database writes (normally not a perfor5mance sensitive item) write to both SSD and disk. In some
architectures where reads and writes can be buffered in caches at the HDD array level, turning on write
    caching can reduce or eliminate writes as a source of wait activity. Note that turning on write caching is
    only suggested when the primary mirror is on persistent SSD technology.

      Some Actual numbers
    Using tables from a TPC-H setup and a 3 terabyte TPC-H configuration the performance differences
    between using disk and SSD can be easily shown. Figure 6 shows the tables used for the test.
•     Three Tables
            o    Part (600m rows)
            o    Supplier(30m rows)
            o    PartSupp (2.4b rows)
•     Three Indexes
            o    (partkey, suppkey, partkey+suppkey)




                                         Figure 6: Schema of Test Tables
    Using an indexed, optimized query (shown in Figure 7) we generate 7 IOPS per query execution (on the
    average.) Now, 7 IOPS wouldn’t really test the performance of any system, but, we utilize PL/SQL to
    generate this query with random key values in multiple sessions so that we actually execute the query
    2,000,000 times for a total of 14,000,000 IOPS.
    The query finds the total amount owed to all suppliers for a particular part.


select sum(s_acctbal) into sum_s_acctbal
    from
 supplier
 where
 s_suppkey
 in (
     select
     ps_suppkey
     from partsupp
     where ps_partkey = (x)
 );
                                               Figure 7: Test Query
        •       From each server (4 total), 50 simulated users run a stored procedure 10 times that submits this
                query 1000 times
•       4*50*10*1000 = 2,000,000 Queries
           •       Test with disks or SSD set to preferred
  SQL> alter system set ASM_PREFERRED_READ_FAILURE_GROUPS = 'HYBRID.SSD’;

  System altered.

  SQL> alter system set ASM_PREFERRED_READ_FAILURE_GROUPS = 'HYBRID.DISK';

  System altered.


       When the test is run against the architecture with PRG set to HYBRID.DISK we see the following results:
  •      ~4000 IOPS per RAC node
               o    16,000 IOPS total
  •      12.25 minutes to complete with 4 nodes running (2m queries).
[oracle@opera1 ~]$ time ./spawn_50.sh

real       12m15.434s
user       0m5.464s
sys        0m4.031s


       When the test is run against the architecture with PRG set to HYBRID.SSD we see the following results:
  •      40,000 IOPS per RAC node
               o    160,000 total in this test
  •      1.3 minutes to complete with 4 nodes running (2m queries).
  [oracle@opera1 ~]$ time ./spawn_50.sh

  real         1m19.838s
  user         0m4.439s
  sys          0m3.215s


       Figure 8 shows the top five wait events from AWR for both the HDD and SDD PRG runs.
       HDD Results




       SSD Results
Figure 8: AWR Top Five Waits
Figure 9 shows the difference in total IOPS for the same time duration for both HDD and SSD during the
test runs.
HDD Test Run




SSD Test Run




                            Figure 9: AWR Tablespace IO Statistics
Summary
    Let’s summarize the results of incorporating the ASM PRG architecture:
•    ALL blocking IO is handled by the SSD
         o   >10 times faster performance than HDDs!
•    Disks provide redundancy in order to keep costs reasonable.
•    No sacrificing redundancy
•    Allows reuse of legacy hardware
    In this paper we have shown the needed components of a performance oriented, reliable and resilient ASM-
    PRG Oracle system. We delineated the limitations of 100% disk based architectures and showed how
    addition of solid state technology can dramatically improve a system. Finally we showed the physical
    layout for the architecture.

Contenu connexe

Tendances

Fulcrum Group Storage And Storage Virtualization Presentation
Fulcrum Group Storage And Storage Virtualization PresentationFulcrum Group Storage And Storage Virtualization Presentation
Fulcrum Group Storage And Storage Virtualization PresentationSteve Meek
 
Backup & recovery for exadata
Backup & recovery for exadataBackup & recovery for exadata
Backup & recovery for exadatasolarisyougood
 
Exadata Patching Demystified
Exadata Patching DemystifiedExadata Patching Demystified
Exadata Patching DemystifiedEnkitec
 
Implementing Flash Storage for SQL Server from Virident
Implementing Flash Storage for SQL Server from ViridentImplementing Flash Storage for SQL Server from Virident
Implementing Flash Storage for SQL Server from ViridentVirident
 
White Paper: EMC FAST Cache — A Detailed Review
White Paper: EMC FAST Cache — A Detailed Review   White Paper: EMC FAST Cache — A Detailed Review
White Paper: EMC FAST Cache — A Detailed Review EMC
 
Oracle Virtualization Best Practices
Oracle Virtualization Best PracticesOracle Virtualization Best Practices
Oracle Virtualization Best PracticesEMC
 
Understanding Solid State Disk and the Oracle Database Flash Cache (older ver...
Understanding Solid State Disk and the Oracle Database Flash Cache (older ver...Understanding Solid State Disk and the Oracle Database Flash Cache (older ver...
Understanding Solid State Disk and the Oracle Database Flash Cache (older ver...Guy Harrison
 
Oracle it runs zfs storage appliance
Oracle it runs zfs storage applianceOracle it runs zfs storage appliance
Oracle it runs zfs storage appliancesolarisyougood
 
Iocg Whats New In V Sphere
Iocg Whats New In V SphereIocg Whats New In V Sphere
Iocg Whats New In V SphereAnne Achleman
 
Virtualization with Lenovo X6 Blade Servers: white paper
Virtualization with Lenovo X6 Blade Servers: white paperVirtualization with Lenovo X6 Blade Servers: white paper
Virtualization with Lenovo X6 Blade Servers: white paperLenovo Data Center
 
Accelerating virtualized Oracle 12c performance with vSphere 5.5 advanced fea...
Accelerating virtualized Oracle 12c performance with vSphere 5.5 advanced fea...Accelerating virtualized Oracle 12c performance with vSphere 5.5 advanced fea...
Accelerating virtualized Oracle 12c performance with vSphere 5.5 advanced fea...Principled Technologies
 
Storage systems reliability
Storage systems reliabilityStorage systems reliability
Storage systems reliabilityJuha Salenius
 
Boosting performance with the Dell Acceleration Appliance for Databases
Boosting performance with the Dell Acceleration Appliance for DatabasesBoosting performance with the Dell Acceleration Appliance for Databases
Boosting performance with the Dell Acceleration Appliance for DatabasesPrincipled Technologies
 
Boosting virtualization performance with Intel SSD DC Series P3600 NVMe SSDs ...
Boosting virtualization performance with Intel SSD DC Series P3600 NVMe SSDs ...Boosting virtualization performance with Intel SSD DC Series P3600 NVMe SSDs ...
Boosting virtualization performance with Intel SSD DC Series P3600 NVMe SSDs ...Principled Technologies
 
Oracle on vSphere best practices
Oracle on vSphere best practices Oracle on vSphere best practices
Oracle on vSphere best practices Filip Verloy
 
EMC XtremIO storage array 4.0 and VMware vSphere 6.0: Scaling mixed-database ...
EMC XtremIO storage array 4.0 and VMware vSphere 6.0: Scaling mixed-database ...EMC XtremIO storage array 4.0 and VMware vSphere 6.0: Scaling mixed-database ...
EMC XtremIO storage array 4.0 and VMware vSphere 6.0: Scaling mixed-database ...Principled Technologies
 
Oracle Exadata 1Z0-485 Certification
Oracle Exadata 1Z0-485 CertificationOracle Exadata 1Z0-485 Certification
Oracle Exadata 1Z0-485 CertificationExadatadba
 
VMworld 2013: VMware Disaster Recovery Solution with Oracle Data Guard and Si...
VMworld 2013: VMware Disaster Recovery Solution with Oracle Data Guard and Si...VMworld 2013: VMware Disaster Recovery Solution with Oracle Data Guard and Si...
VMworld 2013: VMware Disaster Recovery Solution with Oracle Data Guard and Si...VMworld
 

Tendances (20)

Fulcrum Group Storage And Storage Virtualization Presentation
Fulcrum Group Storage And Storage Virtualization PresentationFulcrum Group Storage And Storage Virtualization Presentation
Fulcrum Group Storage And Storage Virtualization Presentation
 
Backup & recovery for exadata
Backup & recovery for exadataBackup & recovery for exadata
Backup & recovery for exadata
 
Exadata Patching Demystified
Exadata Patching DemystifiedExadata Patching Demystified
Exadata Patching Demystified
 
Implementing Flash Storage for SQL Server from Virident
Implementing Flash Storage for SQL Server from ViridentImplementing Flash Storage for SQL Server from Virident
Implementing Flash Storage for SQL Server from Virident
 
White Paper: EMC FAST Cache — A Detailed Review
White Paper: EMC FAST Cache — A Detailed Review   White Paper: EMC FAST Cache — A Detailed Review
White Paper: EMC FAST Cache — A Detailed Review
 
Oracle Virtualization Best Practices
Oracle Virtualization Best PracticesOracle Virtualization Best Practices
Oracle Virtualization Best Practices
 
Understanding Solid State Disk and the Oracle Database Flash Cache (older ver...
Understanding Solid State Disk and the Oracle Database Flash Cache (older ver...Understanding Solid State Disk and the Oracle Database Flash Cache (older ver...
Understanding Solid State Disk and the Oracle Database Flash Cache (older ver...
 
Oracle it runs zfs storage appliance
Oracle it runs zfs storage applianceOracle it runs zfs storage appliance
Oracle it runs zfs storage appliance
 
Iocg Whats New In V Sphere
Iocg Whats New In V SphereIocg Whats New In V Sphere
Iocg Whats New In V Sphere
 
Virtualization with Lenovo X6 Blade Servers: white paper
Virtualization with Lenovo X6 Blade Servers: white paperVirtualization with Lenovo X6 Blade Servers: white paper
Virtualization with Lenovo X6 Blade Servers: white paper
 
GuideIT Delivery Design - File Shares
GuideIT Delivery Design - File SharesGuideIT Delivery Design - File Shares
GuideIT Delivery Design - File Shares
 
Accelerating virtualized Oracle 12c performance with vSphere 5.5 advanced fea...
Accelerating virtualized Oracle 12c performance with vSphere 5.5 advanced fea...Accelerating virtualized Oracle 12c performance with vSphere 5.5 advanced fea...
Accelerating virtualized Oracle 12c performance with vSphere 5.5 advanced fea...
 
Storage systems reliability
Storage systems reliabilityStorage systems reliability
Storage systems reliability
 
Boosting performance with the Dell Acceleration Appliance for Databases
Boosting performance with the Dell Acceleration Appliance for DatabasesBoosting performance with the Dell Acceleration Appliance for Databases
Boosting performance with the Dell Acceleration Appliance for Databases
 
Boosting virtualization performance with Intel SSD DC Series P3600 NVMe SSDs ...
Boosting virtualization performance with Intel SSD DC Series P3600 NVMe SSDs ...Boosting virtualization performance with Intel SSD DC Series P3600 NVMe SSDs ...
Boosting virtualization performance with Intel SSD DC Series P3600 NVMe SSDs ...
 
Oracle on vSphere best practices
Oracle on vSphere best practices Oracle on vSphere best practices
Oracle on vSphere best practices
 
Avamar 7 2010
Avamar 7 2010Avamar 7 2010
Avamar 7 2010
 
EMC XtremIO storage array 4.0 and VMware vSphere 6.0: Scaling mixed-database ...
EMC XtremIO storage array 4.0 and VMware vSphere 6.0: Scaling mixed-database ...EMC XtremIO storage array 4.0 and VMware vSphere 6.0: Scaling mixed-database ...
EMC XtremIO storage array 4.0 and VMware vSphere 6.0: Scaling mixed-database ...
 
Oracle Exadata 1Z0-485 Certification
Oracle Exadata 1Z0-485 CertificationOracle Exadata 1Z0-485 Certification
Oracle Exadata 1Z0-485 Certification
 
VMworld 2013: VMware Disaster Recovery Solution with Oracle Data Guard and Si...
VMworld 2013: VMware Disaster Recovery Solution with Oracle Data Guard and Si...VMworld 2013: VMware Disaster Recovery Solution with Oracle Data Guard and Si...
VMworld 2013: VMware Disaster Recovery Solution with Oracle Data Guard and Si...
 

Similaire à Using preferred read groups in oracle asm michael ault

The benefits of IBM FlashSystems
The benefits of IBM FlashSystemsThe benefits of IBM FlashSystems
The benefits of IBM FlashSystemsLuca Comparini
 
Rob Callaghan_OOW14 IO Performance for Database
Rob Callaghan_OOW14 IO Performance for DatabaseRob Callaghan_OOW14 IO Performance for Database
Rob Callaghan_OOW14 IO Performance for DatabaseRob Callaghan
 
Apresentacao Solid Access Corp Presentation Openware 5 20 10
Apresentacao Solid Access Corp Presentation Openware 5 20 10Apresentacao Solid Access Corp Presentation Openware 5 20 10
Apresentacao Solid Access Corp Presentation Openware 5 20 10Sidnir Vieira
 
Demartek lenovo s3200_sql_server_evaluation_2016-01
Demartek lenovo s3200_sql_server_evaluation_2016-01Demartek lenovo s3200_sql_server_evaluation_2016-01
Demartek lenovo s3200_sql_server_evaluation_2016-01Lenovo Data Center
 
Oracle R12 EBS Performance Tuning
Oracle R12 EBS Performance TuningOracle R12 EBS Performance Tuning
Oracle R12 EBS Performance TuningScott Jenner
 
Open Ware Ramsan Dram Ssd
Open Ware Ramsan  Dram SsdOpen Ware Ramsan  Dram Ssd
Open Ware Ramsan Dram SsdSidnir Vieira
 
EOUG95 - Client Server Very Large Databases - Paper
EOUG95 - Client Server Very Large Databases - PaperEOUG95 - Client Server Very Large Databases - Paper
EOUG95 - Client Server Very Large Databases - PaperDavid Walker
 
SQLintersection keynote a tale of two teams
SQLintersection keynote a tale of two teamsSQLintersection keynote a tale of two teams
SQLintersection keynote a tale of two teamsSumeet Bansal
 
Big Data Glossary of terms
Big Data Glossary of termsBig Data Glossary of terms
Big Data Glossary of termsKognitio
 
Performance Tuning
Performance TuningPerformance Tuning
Performance TuningJannet Peetz
 
Microsoft SQL Server 2014 in memory oltp tdm white paper
Microsoft SQL Server 2014 in memory oltp tdm white paperMicrosoft SQL Server 2014 in memory oltp tdm white paper
Microsoft SQL Server 2014 in memory oltp tdm white paperDavid J Rosenthal
 
Troubleshooting SQL Server
Troubleshooting SQL ServerTroubleshooting SQL Server
Troubleshooting SQL ServerStephen Rose
 
Systems oracle overview_hardware
Systems oracle overview_hardwareSystems oracle overview_hardware
Systems oracle overview_hardwareFran Navarro
 
Oracle 11gR2 plain servers vs Exadata - 2013
Oracle 11gR2 plain servers vs Exadata - 2013Oracle 11gR2 plain servers vs Exadata - 2013
Oracle 11gR2 plain servers vs Exadata - 2013Connor McDonald
 
Insiders Guide- Managing Storage Performance
Insiders Guide- Managing Storage PerformanceInsiders Guide- Managing Storage Performance
Insiders Guide- Managing Storage PerformanceDataCore Software
 
7. accelerating performance w_flash-13-10-10
7. accelerating performance w_flash-13-10-107. accelerating performance w_flash-13-10-10
7. accelerating performance w_flash-13-10-10Doina Draganescu
 
SOUG_SDM_OracleDB_V3
SOUG_SDM_OracleDB_V3SOUG_SDM_OracleDB_V3
SOUG_SDM_OracleDB_V3UniFabric
 
4 facing explosive data growth five ways to optimize storage for oracle datab...
4 facing explosive data growth five ways to optimize storage for oracle datab...4 facing explosive data growth five ways to optimize storage for oracle datab...
4 facing explosive data growth five ways to optimize storage for oracle datab...Dr. Wilfred Lin (Ph.D.)
 
5 Things You Need to Know About Enterprise Fl
 5 Things You Need to Know About Enterprise Fl 5 Things You Need to Know About Enterprise Fl
5 Things You Need to Know About Enterprise FlWestern Digital
 

Similaire à Using preferred read groups in oracle asm michael ault (20)

The benefits of IBM FlashSystems
The benefits of IBM FlashSystemsThe benefits of IBM FlashSystems
The benefits of IBM FlashSystems
 
Rob Callaghan_OOW14 IO Performance for Database
Rob Callaghan_OOW14 IO Performance for DatabaseRob Callaghan_OOW14 IO Performance for Database
Rob Callaghan_OOW14 IO Performance for Database
 
Apresentacao Solid Access Corp Presentation Openware 5 20 10
Apresentacao Solid Access Corp Presentation Openware 5 20 10Apresentacao Solid Access Corp Presentation Openware 5 20 10
Apresentacao Solid Access Corp Presentation Openware 5 20 10
 
Demartek lenovo s3200_sql_server_evaluation_2016-01
Demartek lenovo s3200_sql_server_evaluation_2016-01Demartek lenovo s3200_sql_server_evaluation_2016-01
Demartek lenovo s3200_sql_server_evaluation_2016-01
 
Oracle R12 EBS Performance Tuning
Oracle R12 EBS Performance TuningOracle R12 EBS Performance Tuning
Oracle R12 EBS Performance Tuning
 
Open Ware Ramsan Dram Ssd
Open Ware Ramsan  Dram SsdOpen Ware Ramsan  Dram Ssd
Open Ware Ramsan Dram Ssd
 
EOUG95 - Client Server Very Large Databases - Paper
EOUG95 - Client Server Very Large Databases - PaperEOUG95 - Client Server Very Large Databases - Paper
EOUG95 - Client Server Very Large Databases - Paper
 
SQLintersection keynote a tale of two teams
SQLintersection keynote a tale of two teamsSQLintersection keynote a tale of two teams
SQLintersection keynote a tale of two teams
 
Big Data Glossary of terms
Big Data Glossary of termsBig Data Glossary of terms
Big Data Glossary of terms
 
Performance Tuning
Performance TuningPerformance Tuning
Performance Tuning
 
Microsoft SQL Server 2014 in memory oltp tdm white paper
Microsoft SQL Server 2014 in memory oltp tdm white paperMicrosoft SQL Server 2014 in memory oltp tdm white paper
Microsoft SQL Server 2014 in memory oltp tdm white paper
 
Troubleshooting SQL Server
Troubleshooting SQL ServerTroubleshooting SQL Server
Troubleshooting SQL Server
 
Systems oracle overview_hardware
Systems oracle overview_hardwareSystems oracle overview_hardware
Systems oracle overview_hardware
 
Oracle 11gR2 plain servers vs Exadata - 2013
Oracle 11gR2 plain servers vs Exadata - 2013Oracle 11gR2 plain servers vs Exadata - 2013
Oracle 11gR2 plain servers vs Exadata - 2013
 
Insiders Guide- Managing Storage Performance
Insiders Guide- Managing Storage PerformanceInsiders Guide- Managing Storage Performance
Insiders Guide- Managing Storage Performance
 
7. accelerating performance w_flash-13-10-10
7. accelerating performance w_flash-13-10-107. accelerating performance w_flash-13-10-10
7. accelerating performance w_flash-13-10-10
 
Exadata
ExadataExadata
Exadata
 
SOUG_SDM_OracleDB_V3
SOUG_SDM_OracleDB_V3SOUG_SDM_OracleDB_V3
SOUG_SDM_OracleDB_V3
 
4 facing explosive data growth five ways to optimize storage for oracle datab...
4 facing explosive data growth five ways to optimize storage for oracle datab...4 facing explosive data growth five ways to optimize storage for oracle datab...
4 facing explosive data growth five ways to optimize storage for oracle datab...
 
5 Things You Need to Know About Enterprise Fl
 5 Things You Need to Know About Enterprise Fl 5 Things You Need to Know About Enterprise Fl
5 Things You Need to Know About Enterprise Fl
 

Plus de Louis liu

Tcpcopy benchmark
Tcpcopy benchmarkTcpcopy benchmark
Tcpcopy benchmarkLouis liu
 
JK Log-Center architect
JK Log-Center architectJK Log-Center architect
JK Log-Center architectLouis liu
 
JKDB BACKUP Introduction
JKDB BACKUP IntroductionJKDB BACKUP Introduction
JKDB BACKUP IntroductionLouis liu
 
Infiniflash benchmark
Infiniflash benchmarkInfiniflash benchmark
Infiniflash benchmarkLouis liu
 
MySQL Tokudb engine benchmark
MySQL Tokudb engine benchmarkMySQL Tokudb engine benchmark
MySQL Tokudb engine benchmarkLouis liu
 
Nvmfs benchmark
Nvmfs benchmarkNvmfs benchmark
Nvmfs benchmarkLouis liu
 
MySQL 5.7 milestone
MySQL 5.7 milestoneMySQL 5.7 milestone
MySQL 5.7 milestoneLouis liu
 
MySQL Oslayer performace optimization
MySQL  Oslayer performace optimizationMySQL  Oslayer performace optimization
MySQL Oslayer performace optimizationLouis liu
 
MySQL async message subscription platform
MySQL async message subscription platformMySQL async message subscription platform
MySQL async message subscription platformLouis liu
 
HBASE Performane Test
HBASE Performane TestHBASE Performane Test
HBASE Performane TestLouis liu
 
Jkcn MySQLDB 架构
Jkcn MySQLDB 架构Jkcn MySQLDB 架构
Jkcn MySQLDB 架构Louis liu
 
基于Mongodb的压力评测工具 ycsb的一些概括
基于Mongodb的压力评测工具 ycsb的一些概括基于Mongodb的压力评测工具 ycsb的一些概括
基于Mongodb的压力评测工具 ycsb的一些概括Louis liu
 
My sql fabric ha and sharding solutions
My sql fabric ha and sharding solutionsMy sql fabric ha and sharding solutions
My sql fabric ha and sharding solutionsLouis liu
 
NetApp ef540 SSD Storage Test
NetApp ef540 SSD Storage TestNetApp ef540 SSD Storage Test
NetApp ef540 SSD Storage TestLouis liu
 
Exadata best practice on E-commerce area
Exadata best practice on E-commerce area Exadata best practice on E-commerce area
Exadata best practice on E-commerce area Louis liu
 
MySQL 5.5&5.6 new features summary
MySQL 5.5&5.6 new features summaryMySQL 5.5&5.6 new features summary
MySQL 5.5&5.6 new features summaryLouis liu
 
Ssd gc review
Ssd gc reviewSsd gc review
Ssd gc reviewLouis liu
 
1号店数据库架构
1号店数据库架构1号店数据库架构
1号店数据库架构Louis liu
 
Architecture of YHD
Architecture of YHDArchitecture of YHD
Architecture of YHDLouis liu
 

Plus de Louis liu (20)

Tcpcopy benchmark
Tcpcopy benchmarkTcpcopy benchmark
Tcpcopy benchmark
 
JK Log-Center architect
JK Log-Center architectJK Log-Center architect
JK Log-Center architect
 
Wdt Test
Wdt TestWdt Test
Wdt Test
 
JKDB BACKUP Introduction
JKDB BACKUP IntroductionJKDB BACKUP Introduction
JKDB BACKUP Introduction
 
Infiniflash benchmark
Infiniflash benchmarkInfiniflash benchmark
Infiniflash benchmark
 
MySQL Tokudb engine benchmark
MySQL Tokudb engine benchmarkMySQL Tokudb engine benchmark
MySQL Tokudb engine benchmark
 
Nvmfs benchmark
Nvmfs benchmarkNvmfs benchmark
Nvmfs benchmark
 
MySQL 5.7 milestone
MySQL 5.7 milestoneMySQL 5.7 milestone
MySQL 5.7 milestone
 
MySQL Oslayer performace optimization
MySQL  Oslayer performace optimizationMySQL  Oslayer performace optimization
MySQL Oslayer performace optimization
 
MySQL async message subscription platform
MySQL async message subscription platformMySQL async message subscription platform
MySQL async message subscription platform
 
HBASE Performane Test
HBASE Performane TestHBASE Performane Test
HBASE Performane Test
 
Jkcn MySQLDB 架构
Jkcn MySQLDB 架构Jkcn MySQLDB 架构
Jkcn MySQLDB 架构
 
基于Mongodb的压力评测工具 ycsb的一些概括
基于Mongodb的压力评测工具 ycsb的一些概括基于Mongodb的压力评测工具 ycsb的一些概括
基于Mongodb的压力评测工具 ycsb的一些概括
 
My sql fabric ha and sharding solutions
My sql fabric ha and sharding solutionsMy sql fabric ha and sharding solutions
My sql fabric ha and sharding solutions
 
NetApp ef540 SSD Storage Test
NetApp ef540 SSD Storage TestNetApp ef540 SSD Storage Test
NetApp ef540 SSD Storage Test
 
Exadata best practice on E-commerce area
Exadata best practice on E-commerce area Exadata best practice on E-commerce area
Exadata best practice on E-commerce area
 
MySQL 5.5&5.6 new features summary
MySQL 5.5&5.6 new features summaryMySQL 5.5&5.6 new features summary
MySQL 5.5&5.6 new features summary
 
Ssd gc review
Ssd gc reviewSsd gc review
Ssd gc review
 
1号店数据库架构
1号店数据库架构1号店数据库架构
1号店数据库架构
 
Architecture of YHD
Architecture of YHDArchitecture of YHD
Architecture of YHD
 

Dernier

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 

Dernier (20)

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 

Using preferred read groups in oracle asm michael ault

  • 1. Using ASM Preferred Read Groups in Oracle to Maximize Performance Michael R. Ault, Oracle Guru, TMS Inc. Introduction In today’s 24X7 fast paced world your Oracle database system is a lynch pin that holds the fabric of your company together. The Oracle system must perform well, be reliable and be resilient. But what do these requirements entail? Performance – Queries, reports and screens must return in a reasonable period of time to the requestor. What is reasonable is negotiable in some cases, in others your feet are held to the fires of various service level agreements (SLA). Reliability – A single system fault should not be able to bring the system down. In many industries loss of even a few minutes of processing impacts the bottom line. Cost – A solution should deliver performance and reliability at a reasonable cost. In this paper we will show a new Oracle system architecture that fulfills all of the above requirements. By leveraging the available features of Oracle itself, and new technologies available from TMS, a high- performance, reliable and cost effective system can easily be constructed. Let’s look at the different aspects of performance, reliability and cost and examine what Oracle and TMS technologies should be used to fulfill their requirements. Performance Most modern servers provide adequate CPU and memory resources. Rapid technological advances governed by Moore’s law have allowed more memory and more powerful processors to be economically available every year. In most of the performance related issues we have come up against the issues that most affect the performance of a database are related to the IO subsystem. Figure 1 shows how CPU speeds have increased while disk access times have not kept up. Relative Improvement Over Time 30 25 20 Processor Speeds 15 Disk Access Times 10 5 0 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 Figure 1: Relative CPU and Disk Performance
  • 2. IO is the Biggest Issue For many years the IO subsystem for any computer has been its weakest link, requiring many complex techniques to be used to squeeze the last bit of performance from disk drives. Disk drives are generally limited to 15,000 rotations per minute (RPM) based on power, motor, and physics limitations. Since the main component of a disk drive’s latency is its rotational latency this limits disk drive raw response performance to between 2-5 milliseconds. Figure 2 shows the disks and head assembly from a 10K RPM, 74 GB large form factor drive. Figure 1: Disks and Head Assembly How Do Disk Systems Compensate? The only way to boost the IO capability of disk based systems is to increase the number of active disks. Each disk can sustain a maximum of 200 random IO per second (IOPS.) So if your system needs to perform 10,000 IOPS to maintain performance you will need at least 50 disk drives just to maintain a 2-5 millisecond response time. If you have a large number of simultaneous users or do many full table scans or multi-block accesses then this number of needed drives increases dramatically. In the TPC-H data warehouse benchmark for example, the number of drives needed to get adequate performance may result in the purchase of 30-40 times the needed storage capacity simply to get the needed IOPS to support the needed IO capacity. In many cases we see that 10-20 percent of the database is accounting for 90 percent of the IOPS. These IOPS intensive data tables and indexes “poison” the IO subsystem resulting in slow performance for the entire application. Solid State Disks With the performance gap between processors and hard drive-based storage systems widening, solid state storage is entering the limelight. Because solid state systems rely on memory chips for data storage, they offer unprecedented access times and tremendously high IOPS rates, which narrow the gap between the processor speeds and storage speeds. Solid state disks are a proven technology – they have been designed and manufactured for over 31 years. Strictly, a solid state disk (or SSD) is any storage device that does not rely on mechanical parts to input and output data. Typically, however, the term refers to storage devices that use memory (DDR or Flash) as the primary storage media. Data is stored directly on memory chips and accessed from them. This results in storage speeds far greater than is even theoretically possible with conventional, magnetic storage devices. To fully make use of this speed, SSDs connect to servers or networks through multiple high-speed channels. A 5 terabyte SSD is shown in Figure 3.
  • 3. Figure 2: The 5 Terabyte SSD Solid State Disk Reliability Reliability means that no single component failure will result in loss of the system. Usually we meet reliability by means of redundant components: multiple CPUS, multiple power supplies, multiple fans, multiple HBAs, and redundant storage. With Oracle, Oracle Real Application Clusters (RAC) can be deployed with two or more servers to ensure a database doesn’t go down in the event of a total server failure. Of course HVAC and power must also be redundant, but those are beyond the scope of this paper. A common approach to ensuring reliability in the storage has been deploying SAN systems with redundant storage “heads”. Each head has connections to the servers and to the storage, and the ability to create a RAID layout across the disks. This approach is effective with lots of storage that is used to support many applications, but it is less effective when you are focusing on a single important application such as a large Oracle database. This is because the storage heads tend to be very expensive and add latency to every IO access - a bad proposition when the storage is SSD. Oracle Automatic Storage Management Oracle introduced Automatic Storage Management (ASM) in 10g as a compelling option to allow Oracle to provide storage redundancy and eliminate the expense of redundant storage heads. ASM provides striping and mirroring capabilities across multiple storage devices. This allows any storage component to fail without data loss and full redundancy can quickly be restored through automatic rebalancing. A new feature was added in Oracle 11g ASM that enables extremely cost effective SSD usage. The Preferred Mirror Read option enables a mirror to be created between storage devices with different performance characteristics. Writes are sent to both storage devices to ensure redundancy is maintained, but reads are only serviced by the storage that is specified as preferred. This enables SSDs to be mirrored with traditional storage when the read IO performance is the primary concern. Cost Solid State disks have an interested combination of characteristics: they are expensive for capacity but they are extremely inexpensive for performance. To leverage SSDs effectively the capacity used must be limited to just what is necessary. In the architecture laid out in this document SSDs are used in combination with disks in order to control the cost. This is done without sacrificing performance or reliability, all data is mirrored to a separate physical enclosure, and every time Oracle must wait on an IO request it will be delivered at SSD speed. Other Performance Limiters in Oracle Generally speaking Oracle is read latency sensitive and write latency insensitive when it comes to data. If you delay data reads Oracle performance will suffer. In the case of data writes Oracle uses a lazy-write methodology known as “delayed block clean-out.” Delayed block clean-out simply means than Oracle only writes out a data block back to the IO subsystem when the block is needed by another process for a different bit of data. Thus, a block may reside in the cache for several seconds before it is actually written back to disk after an Oracle process is finished with it. However, there are three types of writes that need to be accomplished quickly, these are:
  • 4. Redo block writes • Undo block writes • Temporary block writes Each of the above writes can result in a transaction waiting for the write to complete before it continues. High latency writes on redo, undo and temporary blocks cannot be tolerated in a busy system. In cases where there as a large number of commits per second, redo writes can be a great concern. In situations where there may be a large number of rollbacks, undo blocks become a read and write concern and any temporary IO that is excessive is always a concern for any database. Redo and Undo are usually sequential writes and whenever possible should be isolated from other forms of IO. Temporary tablespace IO, even in system with zero disk sorts, can be a major contributor to the IO picture. Remember that temporary IO is used not just for sorts, but also for hash joins, bitmap operations and temporary table operations that exceed PGA limits. We have seen temporary IO be the major source of IO in a system even when there were zero sorts going to disk. Optimized Architecture for ASM PRG Given these concerns: performance, reliability and resiliency, how can we create a single system that will fulfill all of the requirements in each area and still perform? The only way is to combine the best features of Oracle in an architecture where disk and SSD are used in harmony. Components of Architecture What do we need to use with this ultimate system? Hardware 1. SSD (prefer highest speed and capacity available. 2. Disks – Enterprise 10K RPM SFF SAS drives 3. Servers – Lots of memory to hold the most active dataset and dirty data buffers. Oracle 11g Features: 1. ASM – Automatic Storage Management 2. RAC – Real Application Clusters Server Redundancy At the server level, the system will have 2 or more multi-CPU servers configured with plenty of memory to serve hold the frequently reused database segments and dirty data buffers. The servers utilize low latency, high capacity interconnections and Oracle RAC is utilized between the servers to handle server failure. At a minimum 2 servers are required, however, for maximum redundancy with no loss of capacity in the event of a single server failure N+1 servers are required where N is the number of servers needed for performance and scalability. IO Subsystem Tiers In addition to Oracle features, we need to utilize a multi-tier IO subsystem. Figure 4 shows the storage pyramid indicating the various tiers.
  • 5. Figure 3: Tiered Storage Pyramid In order to meet our performance criteria, our write sensitive areas: redo, undo and temp, need to be on low- latency high bandwidth storage. The best response time for writes is provided by battery backed RAM. This is provided by the SSD, the best configuration uses RAM buffers with super capacitor backing to provide 80 microsecond write times. The bulk Flash storage enables the draining of the RAM buffers at up to 250,000 writes/s and ensures that the read performance of Tier 0 is excellent. To ensure there is no single point of failure, this Tier is mirrored across two separate SSD chassis. The capacity of this tier is limited as the circular logs in Oracle require performance but not a tremendous amount of capacity. The next tier, tier 1, is for the database tables and indexes. This tier leverages the low latency read performance of the SSD (0.25 ms), and the cost effectiveness of disks for capacity and limited IO/s requirements. In this tier the SSD’s are placed into an ASM preferred read mirror with traditional disks. In a preferred read mirror, the non-preferred member of the mirror (the disks) receives only writes. This tier only contains write-insensitive files so the latency of the writes to this tier does not matter. However, this does not mean that the write throughput of this tier isn’t important. This tier must be capable of emptying the Oracle’s cache at the same rate that it is being filled by the application. This means that the write IOPS and Bandwidth of this tier must be respectable. This requires the number disks in this tier to be sized for aggregate write IOPS, not just to meet the capacity required for a mirror of the SSDs. The last tier, Tier 2, consists of storage for backup and is purely disk based. This tier is made from the extra capacity left over from the disks used in tier 1. The extra capacity is aggregated and mirrored with ASM. Since the performance of the disks used by Tier 1 when the database is under heavy load, this tier is used to store the nightly backup of the database. Disks are partitioned such that the high performance areas are used by the PRG mirror. Let’s See It Figure 5 shows a diagram of this architecture.
  • 6. Figure 4: Architecture Architecture - In Depth As you can see in Figure 5 the architecture is configured with 4 servers. This provides the database with 32 CPU cores for processing and 288 GB of memory for the frequently reused data and dirty data buffer waiting to be written out. With this much memory available to the database every blocking IO to disk needs to be handled at SSD speed. In our SAN setup we see that two 5-terabyte SSDs and 96-300 GB disks are provided. Each SSD provides up to 5 TB of capacity (10 TB total), 250,000 IOPS (500,000 IOPS total) at a latency of 0.08 ms for writes and 0.25 milliseconds for reads. Each SSD’s 5 TB capacity is divided into a 500 GB section and a 4.5 TB section used for Tier 0 and Tier 1. In Tier 0 the two 500 GB sections are mirrored with ASM and used for redo, undo, and Temp. The remaining spaces is aggregated with ASM and are mirrored to disk through Oracle 11g ASM’s preferred mirror read technology to provide 9 TB of fully redundant capacity. Thus there is no disk IO time penalty for reads and writes are buffered by the larger RAM buffer cache and written out to the RamSan/Disk mirror by the lazy writer process. The disks are 96 enterprise SAS drives capable of providing 20,000 IOPS at 5-10 ms latency. Each disk is divided into a small 93 GB partition and a large 206 GB partition. The 96-93 GB partitions are grouped with ASM and used for the disk half of the tier 1 mirror (9 TB). The larger 206 GB partitions are grouped then mirrored providing 9.9 TB to hold a full backup of the database. This Optimized ASM-PRM architecture allows every blocking IO to be served from low latency SSD while disks provide redundancy and backup to keep costs reasonable. Performance During operation the database now serves reads from high speed, low latency SSD via the preferred read mirror. Writes to logs and other write sensitive Oracle structures are to the dedicated SSD mirror while database writes (normally not a perfor5mance sensitive item) write to both SSD and disk. In some
  • 7. architectures where reads and writes can be buffered in caches at the HDD array level, turning on write caching can reduce or eliminate writes as a source of wait activity. Note that turning on write caching is only suggested when the primary mirror is on persistent SSD technology. Some Actual numbers Using tables from a TPC-H setup and a 3 terabyte TPC-H configuration the performance differences between using disk and SSD can be easily shown. Figure 6 shows the tables used for the test. • Three Tables o Part (600m rows) o Supplier(30m rows) o PartSupp (2.4b rows) • Three Indexes o (partkey, suppkey, partkey+suppkey) Figure 6: Schema of Test Tables Using an indexed, optimized query (shown in Figure 7) we generate 7 IOPS per query execution (on the average.) Now, 7 IOPS wouldn’t really test the performance of any system, but, we utilize PL/SQL to generate this query with random key values in multiple sessions so that we actually execute the query 2,000,000 times for a total of 14,000,000 IOPS. The query finds the total amount owed to all suppliers for a particular part. select sum(s_acctbal) into sum_s_acctbal from supplier where s_suppkey in ( select ps_suppkey from partsupp where ps_partkey = (x) ); Figure 7: Test Query • From each server (4 total), 50 simulated users run a stored procedure 10 times that submits this query 1000 times
  • 8. 4*50*10*1000 = 2,000,000 Queries • Test with disks or SSD set to preferred SQL> alter system set ASM_PREFERRED_READ_FAILURE_GROUPS = 'HYBRID.SSD’; System altered. SQL> alter system set ASM_PREFERRED_READ_FAILURE_GROUPS = 'HYBRID.DISK'; System altered. When the test is run against the architecture with PRG set to HYBRID.DISK we see the following results: • ~4000 IOPS per RAC node o 16,000 IOPS total • 12.25 minutes to complete with 4 nodes running (2m queries). [oracle@opera1 ~]$ time ./spawn_50.sh real 12m15.434s user 0m5.464s sys 0m4.031s When the test is run against the architecture with PRG set to HYBRID.SSD we see the following results: • 40,000 IOPS per RAC node o 160,000 total in this test • 1.3 minutes to complete with 4 nodes running (2m queries). [oracle@opera1 ~]$ time ./spawn_50.sh real 1m19.838s user 0m4.439s sys 0m3.215s Figure 8 shows the top five wait events from AWR for both the HDD and SDD PRG runs. HDD Results SSD Results
  • 9. Figure 8: AWR Top Five Waits Figure 9 shows the difference in total IOPS for the same time duration for both HDD and SSD during the test runs. HDD Test Run SSD Test Run Figure 9: AWR Tablespace IO Statistics
  • 10. Summary Let’s summarize the results of incorporating the ASM PRG architecture: • ALL blocking IO is handled by the SSD o >10 times faster performance than HDDs! • Disks provide redundancy in order to keep costs reasonable. • No sacrificing redundancy • Allows reuse of legacy hardware In this paper we have shown the needed components of a performance oriented, reliable and resilient ASM- PRG Oracle system. We delineated the limitations of 100% disk based architectures and showed how addition of solid state technology can dramatically improve a system. Finally we showed the physical layout for the architecture.