Manage Learn to apply best practices and optimize your operations.

How to plan for I/O-intensive environments

I/O-intensive environments with large, sustained workloads of various I/O sizes have their own special management challenges.

What you will learn from this tip: How to identify, plan for and manage high-volume storage networks.

I/O-intensive environments with large, sustained workloads of various I/O sizes have their own special management challenges. Your best bet as a manager of these environments is to anticipate high I/O workloads, and plan for them ahead of time.

While high I/O environments are commonly thought of as a large SAN issue, it's important to realize not every large storage environment is I/O-intensive. The first step in managing a high I/O-intensive environment is to pinpoint where one exists.

In fact, network capacity and number of devices is not an indicator of performance and workload activity. Neither is the presence of a large amount of disk capacity. Small and medium-sized storage environments can be I/O-intensive, if there is a large amount of active workload and I/O processing. An environment with a relatively small number of servers and storage -- for example, an OLTP, database server or vertical application for CRM or ERP -- can be I/O intensive.

Some applications and environments that tend to be I/O-intensive:

  • Video editing and processing including post production.
  • Video on demand and video services.
  • Paging, log, journal and index files.
  • Medical sciences including healthcare and imaging.
  • Geoscience and energy exploration.
  • Aerospace, telemetry and data acquisition.
  • Still and moving video surveillance.
  • Online Transaction Processing (OLTP)
  • Weather forecasting and simulations.
  • Backup and recovery along with data migration.

Some of the previous bullet items could be storage-intensive as well as being I/O-intensive depending on the I/O workload activity. I/O-intensive environments can have large, medium or small amounts of storage, yet have active workloads with either a large number of I/Os (transactions) of various size. For larger I/O sizes, more data will be moved and more bandwidth used, while less bandwidth will be used when processing smaller I/Os. Note that an I/O intensive environment can be optimized to support many transactions, support a large amount of bandwidth, or both.

Some common I/O characteristics:

  • Small I/Os are generally 1-16 blocks (512 bytes-8 KB) in size.
  • Medium-sized I/Os are generally 8-64 blocks (8-32 KB).
  • Large I/O sizes are generally 64 blocks (32 KB) or larger.
  • Transaction-oriented environments have many I/Os per second.
  • Bandwidth environments have many megabytes per second.
  • Latency and response time requirements are tied to SLAs and SLOs.
  • Random or sequential data access occurs with reads, writes, or a mix of both.
  • Workload activity profile, i.e. steady or sustained, occurring in bursts, varying by shift or time of day, week, month, etc.
  • Block-accessed, or file-, or object-based access.

Metrics used for evaluating, tuning and configuring I/O intensive storage:

  • I/O rate per second (or the number of I/O operations performed for a given period of time, independent of the I/O size).
  • Latency or response time to perform an I/O operation. This is also be measured by service delay and queue depth, as indicators of I/O backlog and I/O congestion at the adapter.
  • Throughput, bandwidth and transfer rate.

Tips and recommendations for I/O intensive environments:

  • Load-balance storage volumes across multiple I/O paths and storage subsystems, with high performance ports attached to switches. For example, attach storage to switches using 2 Gbit and 4 Gbit ports, as they become available. Also look for switches that provide virtual output queue capabilities to prevent head of line blocking.
  • Plan for server enhancements with faster interfaces, including PCI-X V2.0 and PCI-Express, to improve I/O performance particularly for applications requiring higher throughput.
  • Utilize the applicable RAID level for specific applications, for example RAID 0+1 for I/O intensive reads and writes, including log and journal files and frequently updated database tables and files. Even though mirrored write-back cache helps RAID-5 performance, avoid using RAID-5 for write-intensive applications.
  • For storage intensive applications, Solid State Disk (SSD) can be an effective I/O and storage medium. The important metric should be dollars-per-useful-I/O, instead of dollars-per-useful–MB, as you would use for storage-intensive applications.
  • A low I/O rate and large transfer rate with large response time is normal for large, sequential I/O operations such as backup/recovery, data migration, data mining, video and imaging.
  • A low transfer rate and large number of I/Os is normal in an I/O intensive environment including OLTP, e-mail, Web and file serving.

For more information:

About the author: Greg Schulz is a senior analyst with the independent storage analysis firm The Evaluator Group Inc. Greg has 25 years of IT experience as a consultant, end user, storage and storage networking vendor and industry analyst. Greg has worked with Unix, Windows, IBM Mainframe, OpenVMS and other hardware/software environments. In addition to being an analyst, Greg is also the author and illustrator of "Resilient Storage Networks." Greg holds both a computer science and software engineering degree from the University of St. Thomas.

This was last published in January 2005

Dig Deeper on Data center storage

Start the conversation

Send me notifications when other members comment.

Please create a username to comment.