Call now: 252-767-6166  
Oracle Training Oracle Support Development Oracle Apps

Free Oracle Tips

HTML Text

 Home
 E-mail Us
 Oracle Articles



 Oracle Training
 Oracle News

 Oracle Forum
 Class Catalog


 Our Staff
 Our Prices
 Help Wanted!

 Remote DBA
 Oracle Tuning
 Emergency 911
 RAC Support
 Apps Support
 Analysis
 Design
 Implementation
 Oracle Support


 SQL Tuning
 Security

 UNIX
 Oracle UNIX
 Linux
 Oracle Linux
 Monitoring
 Remote help

 Remote plans
 Remote
services
 Oracle C++
 Oracle Java
 Apache
 JDeveloper
 App Server

 Applications
 Oracle Forms
 Oracle Portal
 11i Upgrades
 SQL Server
 Oracle Concepts
 HTML-DB Tips
 Software Help

 Remote Help  
 Development  

 Implementation


 Financials Training
 Oracle 11i
 Oracle Apps 11i
 Oracle Workflow
 Oracle AR 11i Class
 Oracle AP 11i class
 Oracle GL 11i class
 Oracle HR 11i class
 Oracle FA 11i class
 11i Project Mgt
 11i procurement
 11i collections


 Oracle Posters
 Oracle Books

 Oracle Tuning Book
 Oracle RAC Book
 Oracle Security
 Easy Oracle Books
 Oracle Scripts
 SQL Server DBA
 SQL Design Patterns
 WISE
 Excel-DB   


 BC Oracle News


 Rednecks!
 Dress code
 Arabian Stallion

 Burleson Arabians
 Guide Horses
 Don Burleson Blog
 Golf & Travel


 Privacy Policy
 

 

 

 

 

Oracle disk I/O throughput speed

Oracle Tips by Burleson Consulting

In a nutshell, an Oracle database is a mechanism to store and retrieve large volumes of data, and many end-users visualize Oracle as a big electronic filing cabinet.

This filing cabinet must be fast and people have come to expect sub-second response time.  These instant response time expectations are driven by tools like Google that can scan a billion web sites for keywords in a fraction of a second. 

But how do you make your Oracle system as fast as Google?  Speed is all about delivering the goods, and serving-up the data.

Even while 64-bit technology and the accompanying large data buffers has reduced disk I/O bottlenecks, many database remain I/O-bound.  You can easily know if your database has significant disk I/O if your AWR of STATSPACK reports shows top-5 wait events that contain "db file sequential reads" (single I/O fetches) or "db_file_scattered_reads" (db_file_multiblock_read_count I/O fetches).

The standard measurement for disk is megabytes per second (MBps) and gigabytes per second (GBPS) and you can make your I/O faster by moving to a faster disk, using SSD, or caching the data inside large data buffers.

Let's explore the relative speeds of disk storage.  A PC laptop transfers data at about 15 MBps and the fastest disk for a PC is solid-state disk at 400 MBps.  In the larger server arena, we see SSD twice as fast as platter disk, with platter-based disk speeds ranging from 200-800 MBPS.

Large Server disk I/O speeds:

This is a list of disk I/O speeds in descending order, and, SSD leads the way for tertiary storage devices:

  • 50 MBps - IEEE1394 is the standard designation for a very fast external bus standard that supports data transfer rates of up to 400 Mbps (in 1394a) and 800 Mbps over copper (in 1394b). IEEE1394 a, in its peer-to-peer bus topology, allows 100 to 400 Mbps data transfer rates for up to 63 nodes, allowing 16 hops at 4.5  meters per hop.
     

  • 100 MBps - IEEE1394 b allows for higher speeds and longer distances. IEEE1394 b is completely compatible with IEEE1394 a providing up to 800 Mbps to 3200 Mbps data transfer over 4.5 meter copper and 100 Mbps over 100 meter copper. If used with Category 5 UTP wiring you can get 400 Mbps over 100 meter plastic optical fiber and 3200 Mbps over 100 meters of glass optical fiber.
     

  • 266 MBps - The Apple Xserve RAID’s list price for 5.6 TB is $12,999, or $2.32 per GB. Its performance is excellent. For a workload of 8KB random reads, it can sustain 1100 I/Os per second (IOPS). For a multi-user sequential workload, it can sustain 266 MBps of read throughput.
     

  • 1,600 MBps - SSD leads the pack in data transfer rates and speed (500,000 I/O's per second)
     

PC Oracle disk speeds:

  • 400-500 MBps - See Texas Memory Systems SSD devices.
     

  • 50-70 MBps - PC laptop SSD - Samsung says the SSD's outperforms a comparably sized HDD by more than 150 per cent. The company quotes the storage disk as reading data at 57 Mbytes per second (MBps) and writes at 32MBps.

Maximum Large MBPS=18.27

Maximum Large MBPS=25.65

  • 15-20 MBps - These reports from Doug Burns with a Windows XP Professional, SP2 laptop.

Maximum Large MBPS=18.27

In sum, most disk deliver data in the range of 200-800 MBPS and SSD can often halve the disk I/O latency.

Disk enqueues can occur when the disk is unable to quickly service concurrent requests.  Super-large disks can be problematic, and the most popular Oracle data files can be placed on the middle absolute track of the device to minimize read-write head movement.

 Disk I/O speed references:

This article from Mike Ault's book "Oracle Disk I/O Tuning, Disk IO Performance & Optimization for Oracle Databases", and great article by Doug Burns in "Doug's Oracle Blog".  These excerpts provide disk I/O speed comparisons.  Also, this informative SSD Speed page has details on solid-state disk technology.

Seeing disk I/O speed using STATSPACK


Here is sample output from a real system showing an empirical sample of average disk I/O speed.  We always expert scattered reads (full-table scans) to be far faster than sequential reads (index probes) because of Oracle sequential prefetch (db_file_multiblock_read_count):
 
col c1 heading 'Average Waits for|Full Scan Read I/O' format 9999.999
col c2 heading 'Average Waits for|Index Read I/O' format 9999.999
col c3 heading 'Percent of| I/O Waits|for scattered|Full Scans' format 9.99
col c4 heading 'Percent of| I/O Waits|for sequential|Index Scans' format 9.99
col c5 heading 'Starting|Value|for|optimizer|index|cost|adj' format 999
 
select
   sum(a.time_waited_micro)/sum(a.total_waits)/1000000 c1,
   sum(b.time_waited_micro)/sum(b.total_waits)/1000000 c2,
   (
      sum(a.total_waits) /
      sum(a.total_waits + b.total_waits)
   ) * 100 c3,
   (
      sum(b.total_waits) /
      sum(a.total_waits + b.total_waits)
   ) * 100 c4,
  (
      sum(b.time_waited_micro) /
      sum(b.total_waits)) /
      (sum(a.time_waited_micro)/sum(a.total_waits)
   ) * 100 c5
from
   dba_hist_system_event a,
   dba_hist_system_event b
where
   a.snap_id = b.snap_id
and
   a.event_name = 'db file scattered read'
and
   b.event_name = 'db file sequential read';
 
 
- scattered read (full table scans) are fast at 13ms (c3)
- sequential reads (index probes) take much longer 86ms (c4)
- starting setting for optimizer_index_cost_adj at 36:


C1         C2         C3         C4         C5
---------- ---------- ---------- ---------- ----------
13,824     5,072      13         86         36

 
Here is another variant, showing changes to optimizer_index_cost_adj wait components over time:

set pages 80
set lines 130
col c1 heading 'Average Waits for|Full Scan Read I/O' format 999999.999
col c2 heading 'Average Waits for|Index Read I/O' format 999999.999
col c3 heading 'Percent of| I/O Waits|for scattered|Full Scans' format
999.99
col c4 heading 'Percent of| I/O Waits|for sequential|Index Scans' format
999.99
col c5 heading 'Starting|Value|for|optimizer|index|cost|adj' format 99999

select a.snap_id "Snap",
       sum(a.time_waited_micro)/sum(a.total_waits)/10000 c1,
       sum(b.time_waited_micro)/sum(b.total_waits)/10000 c2,
       (sum(a.total_waits) / sum(a.total_waits + b.total_waits)) * 100 c3,
       (sum(b.total_waits) / sum(a.total_waits + b.total_waits)) * 100 c4,
       (sum(b.time_waited_micro)/sum(b.total_waits)) /
(sum(a.time_waited_micro)/sum(a.total_waits)) * 100 c5
from
   dba_hist_system_event a,
   dba_hist_system_event b
where a.snap_id = b.snap_id
and a.event_name = 'db file scattered read'
and b.event_name = 'db file sequential read'
group by a.snap_id
order by 1
/

 
  Snap       Full Scan Read I/O    Index Read I/O    Full Scans    Index Scans
 ---------- ------------------ ----------------- ------------- --------------
       5079               .936              .074         10.14          89.86  
       5080               .936              .074         10.14          89.86  
       5081               .936              .074         10.14          89.86  
       5082               .936              .074         10.14          89.86
       5083               .936              .074         10.13          89.87  
       5084               .936              .074         10.13          89.87  
       5085               .936              .074         10.13          89.87


2008 Market Survey of SSD vendors for Oracle:

There are many vendors who offer rack-mount solid-state disk that work with Oracle databases, and the competitive market ensures that product offerings will continuously improve while prices fall.  SearchStorage notes that SSD is will soon replace platter disks and that hundreds of SSD vendors may enter the market:

"The number of vendors in this category could rise to several hundred in the next 3 years as enterprise users become more familiar with the benefits of this type of storage."

As of June 2008, many of the major hardware vendors (including Sun and EMC) are replacing slow disks with RAM-based disks, and Sun announced that all of their large servers will offer SSD.

As of June 2008, here are the major SSD vendors for Oracle databases (vendors are listed alphabetically):

2008 rack mount SSD Performance Statistics

SearchStorage has done a comprehensive survey of rack mount SSD vendors, and lists these SSD rack mount vendors, with this showing the fastest rack-mount SSD devices (as of May 15, 2008):

manufacturer model technology interface performance metrics and notes
Texas Memory Systems RamSan-400 RAM SSD Fibre Channel
InfiniBand
3,000MB/s random sustained external throughput, 400,000 random IOPS
Violin Memory Violin 1010 RAM SSD PCIe 1,400MB/s read, 1,00MB/s write with ×4 PCIe, 3 microseconds latency
Solid Access Technologies USSD 200FC RAM SSD Fibre Channel
SAS
SCSI
391MB/s random sustained read or write per port (full duplex is 719MB/s), with 8 x 4Gbps FC ports aggregated throughput is approx 2,000MB/s, 320,000 IOPS
Curtis HyperXCLR R1000 RAM SSD Fibre Channel 197MB/s sustained R/W transfer rate, 35,000 IOPS

 

Choosing the right SSD for Oracle

When evaluating SSD for Oracle databases you need to consider performance (throughput and response time), reliability (Mean Time Between failures) and TCO (total cost of ownership).  Most SSD vendors will provide a test RAM disk array for benchmark testing so that you can choose the vendor who offers the best price/performance ratio.

Burleson Consulting does not partner with any SSD vendors and we provide independent advice in this constantly-changing market.  BC was one of the earliest adopters of SSD for Oracle and we have been deploying SSD on Oracle database since 2005 and we have experienced SSD experts to help any Oracle shop evaluate whether SSD is right for your application.  BC experts can also help you choose the SSD that is best for your database.  Just  call 800-766-1884 or e-mail.:  for SSD support details.

 


    Need an Oracle Health Check?
  • Do you have bad performance after an upgrade?
     
  • Need to certify that your database follows best practices?

BC Oracle performance gurus can quickly certify every aspect of your Oracle database and provide a complete verification that your database is fully optimized.

 

 

 

 
 
 

Oracle performance tuning book

 

 

Oracle performance tuning software

 
Oracle performance tuning software
 
SearchOracle web site
 
Oracle performance Tuning 10g reference poster
 
Oracle performance tuning webcast
 
Oracle training in Linux commands
 
Oracle training Excel
 
Oracle training & performance tuning books
 

 

Note: This Oracle documentation was created as a support and Oracle training reference for use by our DBA performance tuning consulting professionals. 
Feel free to ask questions on our Oracle forum.

Verify experience! Anyone considering using the services of an Oracle support expert should independently investigate their credentials and experience, and not rely on advertisements and self-proclaimed expertise. All legitimate Oracle experts publish their Oracle qualifications.

Errata?  Oracle technology is changing and we strive to update our BC Oracle support information.  If you find an error or have a suggestion for improving our content, we would appreciate your feedback.  Just  e-mail:  and include the URL for the page.
 
 


Burleson Consulting

The Oracle of database support


 

Copyright © 1996 -  2007 by Burleson Enterprises, Inc. All rights reserved.

Oracle® is the registered trademark of Oracle Corporation.


Hit Counter