Contact Us  |  Ask for Pricing  |  Partners

The World's Fastest Storage®
 

superSSD > Education > Whitepapers > Increase Application Performance

Increase Application Performance
with Solid State Disks

  HTML Version   Printable Version   

Abstract

Maximizing application performance presents constant challenges. One day, network latencies slow applications; another day, limits of processors affect applications; and when everything else is going smoothly, increasing user demands make I/O bottlenecks appear. Solving performance problems and I/O bottlenecks can be a difficult task. While many approaches can reduce I/O bottlenecks, few are cost effective.

Solid state disks are a cost-effective way to improve application performance. Traditional hard disk based systems incur performance penalty because of the high access times of hard disk drives. Solid state disks resolve this problem with low access times and high bandwidth. To quantify this advantage, this whitepaper discusses two landmark benchmarks: IOMeter benchmark results and Storage Performance Council SPC-1 IOPST results. These benchmarks definitively demonstrate how solid state disks offer unparalleled performance at unbeatable prices.

Companies who have implemented solid state disks make better use of their server infrastructure, support increasing concurrent user loads with low response times, and improve user satisfaction.

Table of Contents

Chapter 1. Problem - Performance Contstrained by I/O Bottlenecks
Chapter 2. Approaches to Solving I/O Bottlenecks
Chapter 3. Solution - Reduce I/O Bottlenecks with Solid State Disks
Chapter 4. Benchmark Results
Chapter 5. Results - Solid State Disk Storage Benefits
Chapter 6. Conculsion

Problem:
Performance Constrained by I/O Bottlenecks

IT professionals spend billions of dollars annually attempting to correct application performance issues. The Holy Grail for most data center administrators is deriving the most performance for the least price. I/O bottlenecks are at the root of many performance issues. These bottlenecks are extremely frustrating because they are often difficult to diagnose, and solutions are expensive and rarely long-term.

Understanding I/O Bottlenecks
An I/O solution without bottlenecks has three main components:
  • A high-performance server,
  • A high-bandwidth network, and
  • A high-performance storage device.
Most data centers have two of these three components. Servers are blazingly fast with new and better clock speeds reached every few months. Fast Fibre Channel networks are common, with 2Gbit Fibre Channel widely implemented and 4Gbit Fibre Channel on the horizon. The piece missing from most data centers is a high performing storage device. Figure 1 (below) shows that processor performance has increased over 25x in the last decade while hard disk drive access times have barely improved 2x.

So why have hard disk drive access times lagged behind processor improvements? A quick look at the mechanical characteristics of the disk drive exposes the problem.

Hard Disk Drive Based Storage Devices Have High Data Access Times


Figure 1: Increasing Gap between Processor Speeds and Disk Access Times

Storage devices tend to publish their performance using data access times. StorageReview.com defines access times as:

Access Times = Command Overhead Time + Seek Time + Settle Time + Latency

Of these factors, seek time and latency are the biggest variables in measuring hard drive performance. Seek time refers to "the amount of time required for the read/write heads to move between tracks over the surfaces of the platters." Hard drive latency is the time spent waiting for the disk to spin to the proper location once the read/write head reaches the right place. The resulting access time is measured in milliseconds. For even the fastest of hard disk drives, average data access times exceed 5 milliseconds. Unfortunately, data access times increase as powerful servers build up larger queues on the disk drives.


Figure 2: Hard Disk Drive and its Mechanical Components

High Access Times Result in I/O Wait Time
Servers today could complete millions of operations during a hard disk's 5 milliseconds of data access time. As the processor waits on data to return from the storage device, it does not go about other calculations; it just waits for the data. This is called I/O wait time.

I/O wait time can be expressed as a percentage of available processor time. In other words, a system that has an I/O bottleneck will show high I/O wait percentages and, as a result, lower actual processor utilization percentages (user time and system time). In UNIX operating systems, I/O wait time is available through the SAR command. In Windows operating systems, I/O wait time has to be intuited by looking at processor utilization and physical disk queues.

Impact of the Performance Gap
As the performance gap between processors and hard disk drives increases, I/O wait time increases as a percentage of processor utilization. This trend is combined with trends toward sophisticated applications and demanding users. The results of the performance gap ripple through a business by creating:
  • Low I/Os per second and high I/O wait time
    Based on high access times for storage access
  • Wasted server infrastructure
    Caused by businesses responding to performance problems by buying more processors and more servers.
  • Long application response times
    As wait time builds up
  • Decreased user productivity and decreased customer satisfaction
    Caused by application response time delays
  • Long running batch jobs
    Caused by increasing I/O wait time
  • Shorter maintenance windows and failure to meet service level agreements
    Due to long running batch jobs
  • Decreased profitability
    Caused by the previous factors

Approaches to Solving I/O Bottlenecks

When confronted with application performance problems, data center managers often try a variety of techniques. The more common approaches to solving I/O bottlenecks are:

Adding servers or processors
This is usually a knee-jerk reaction. It is natural to believe that buying a faster processor will solve application performance problems. Processor upgrades increase the number of operations the server can perform per second. However, the new server with faster processors simply waits on slow storage devices because attached storage is not any faster. The costs of increasing processor power includes:
  • Equipment costs - new servers or new processors are expensive.
  • Support costs - new servers come with new support costs.
  • Licensing costs - many software products are licensed based on the type of server and the number of processors.
  • Management costs - adding servers increases the number of support personnel required to support an application.

Adding RAM
Adding RAM is generally most effective in environments with a very high percentage of reads from storage following writes of that data. Adding RAM helps because these reads are cached in the RAM, thus saving the processor from waiting on data from external hard disks. If read requests are random and do not follow the writes quickly, the RAM cache does not help much. Adding RAM does not significantly affect performance of write-intensive applications. For many servers, adding RAM is impossible because all of the expansion slots are already taken. The cost of solving an I/O bottleneck by adding RAM includes:
  • RAM costs - the cost of RAM varies across server brands. Adding small amounts of RAM is inexpensive. Adding large amounts of RAM can be expensive due to the higher costs for higher density memory chips.
  • Server costs - it is not unusual for a company looking to add RAM to have to buy new server equipment to support it.
  • Licensing costs - in some environments, adding RAM could mean moving to a different operating system, such as from Windows Server to Windows Datacenter.

Buying more disk spindles
Adding more disk spindles improves I/O performance by spreading data access across more disk drives. According to StorageReview.com, the fastest hard disk drives provide as many as 400 I/Os per second (compared to hundreds of thousands for solid state disk). Therefore, it is theoretically possible to assemble a RAID solution with enough spindles to solve a performance problem. In fact, a quick review of the existing RAID Storage Performance Council (SPC-1 IOPST) results shows how RAID manufacturers use high spindle counts to get high performance. For example, the highest hard disk-based performance numbers listed by the Storage Performance Council include hundreds of small capacity disk drives taking up several racks of physical space and costing millions of dollars. Two items are worth noting here. First, for a RAID manufacturer to get maximum performance, they must use low capacity disk drives. This is contrary to the trends of customers to use high capacity drives in order to increase capacity. Second, even these massively large and expensive systems only begin to approach the same performance as a single solid state disk, which is physically tiny and very cheap in comparison. The work of the Storage Performance Council (storageperformance.org) really simplifies the data center manager's job here by showing I/O performance and cost for I/O across various vendors and configurations. The cost of adding spindles for performance includes:
  • Equipment costs - buying disk drives from RAID vendors can be expensive, and in order to add enough spindles, you might have to add enclosures. In order to make use of those spindles, you might need to add controller ports.
  • Support costs -adding hardware adds to support costs.
  • Management costs - having a large number of spindles of hard disk results in extra management cost in order to replace failed spindles.
  • Space costs - large numbers of spindles just for performance uses additional datacenter space including additional cooling and electricity.

Buying Monolithic RAID
Monolithic RAID solutions with large RAM caches help improve I/O performance in a couple of ways. First, a large RAM cache can improve read performance if reads tend to quickly follow writes or if a block is frequently accessed. The effectiveness of the RAM cache for this depends on the ratio of the cache to the disk. Second, a cached RAID can speed up disk writes, depending on the write mode selected. RAID manufacturers allow customers to select between different write- modes. In a write-through mode (where the cache writes to disk before notifying the server of a write), a RAID cache does not improve write performance. In a write-back mode (where the cache notifies the server that a write is completed as soon as it is written to cache), a RAID can improve write performance up to a point; determined by a mixture of the size of the cache and the speed of the back end disks. In extremely write-intensive environments, even a write-back cache slows down to the speed of the disks. The Storage Performance Council test results provide guidance here by providing performance levels of different storage devices with their cost/performance. Texas Memory Systems recommends carefully considering the SPC results of these RAID systems when evaluating this solution next to other solutions. The cost of adding cached RAID to improve performance includes:
  • Equipment costs - large cached RAID systems cost hundreds of thousands to millions of dollars.
  • Support costs - with the equipment cost comes a hefty maintenance obligation and added expenses from professional services.
  • Management costs -enterprise RAID products are typically complex and require dedicated staff to manage.

Application tuning
Tuning makes SQL inquiries (that cause storage I/O) as efficient as possible in their use of external storage. Some companies use internal programmers and DBAs to tune application code; others supplement their staff with contractors. Often, special tools are purchased to help programmers find inefficient code. If an application is inefficiently written, application tuning can eliminate I/O bottlenecks. An unfortunate side effect of many tuning exercises is an actual decrease in user functionality as code that makes too many disk accesses is simply removed from the application. In addition, it is not unusual for an organization to tune for too long. In other words, companies often forget the cost of having programmers working on tuning projects. Here are some of the costs associated with application tuning:
  • Staff costs - programming resources are costly in terms of salary and overhead. Increase this cost if contractors are used.
  • Opportunity costs - programmers working on tuning could have been adding functionality to a system.
  • Software licensing costs - many tuning efforts require or use special software to aid their tuning efforts.

Summary of Approaches

Data Access
Patterns
Add Processors Add RAM Add Spindles Monolithic RAID Solid State Disk
High write;
mostly random
High read;
mostly random
High write;
mostly sequential
High read;
mostly sequential
High read;
reads quickly
follow writes

This section has exposed the difficulty in selecting the proper approach to solve application performance problems caused by performance bottlenecks. The next section discusses solid state disks as a preferred choice for resolving I/O bottlenecks at a low cost-for-performance.

Solution:
Reduce I/O Bottlenecks with 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, which narrows the gap between the processor speeds and storage speeds. Companies have used solid state storage systems to resolve I/O bottlenecks for over two decades. These systems have become increasingly sophisticated, higher performing, and lower cost, which sends a clear message . there is no better tool for improving I/O performance.

Understanding Solid State Disks
Solid state disks are a proven technology. In fact, Texas Memory Systems has designed and manufactured solid state disks for over 25 years. Solid state disks are non-volatile storage devices that use RAM as the primary storage media. Solid state disks store and access data directly on RAM chips, which results in storage speeds far greater than conventional, magnetic storage devices. They achieve non-volatility through integrated internal battery and disk backup systems.

Solid state disks have the following characteristics:

Lowest possible access times.
SDRAM-based solid state disks have access times below 20 microseconds, the best access times of any storage platform. As a comparison, a hard disk drive at 5 milliseconds has 250 times higher access times.

High bandwidth.
The enterprise solid state disk market includes products, such as Texas Memory Systems RamSan-320, which can support over 1.5GB per second of random data throughput.

High I/Os per second (IOPS).
Solid state disks offer extraordinarily high random I/O performance because of their low access times and high bandwidth. For more information, see the Texas Memory Systems SPC-1 IOPS results, below.

Low price for performance.
SDRAM based solid state disks provide the best possible price/performance of all storage devices. For more information, see the Texas Memory Systems SPC-1 IOPS results, below.

High availability.
Solid state disks are inherently more reliable than hard disk drive based systems because their data path does not require moving parts.

Non-volatile.
All enterprise solid state disk manufacturers offer non-volatile solutions. These solid state disks have internal batteries that maintain system power long enough to back-up data in memory to internal hard disk drives.

Solid state disks are an excellent solution for I/O bottlenecks, particularly those bottlenecks caused by the high access times of traditional disk based storage systems.

Benchmark Results

Solid state disks offer incredible performance and an unbeatable price:performance ratio. Two independent benchmarks demonstrate the value and performance of the RamSan-320 Solid State Disk:

Results from IOMeter, a widely used freeware program used to benchmark storage performance; Results from Texas Memory Systems SPC-1 IOPST testing. The SPC-1 results, including the cost per SPC-1 IOPS, are audited and verified by the Storage Performance Council.

IOMeter test results
Storage manufacturers use IOMeter, a GNU program publicly available from Sourceforge.net, to benchmark storage devices. The IOMeter tool monitors cumulative results across servers. Texas Memory Systems ran IOMeter on each of the servers shown in Figure 3, above. The following figures show the resulting performance numbers for the RamSan-320 with 100% random data traffic.

These IOMeter performance numbers demonstrate that solid state disks offer the best possible performance levels for random data accesses. The results confirm a peak I/O performance over 250,000 random I/Os per second at a 2k-block size. In addition, the results show peak random bandwidth at over 1,500 Megabytes per second starting with 64k block sizes.

Figure 4, below, shows peak random bandwidth. Note the "Total MBs per Second" of 1651.87-greater than the Texas Memory Systems advertised level of 1.5 GB per second.


Figure 4: Peak RamSan-320 Bandwidth Performance Using IOMeter

Figure 5, below, shows peak random I/Os per second (IOPS). Note the "Total I/Os per Second" of 255508.45-greater than the Texas Memory Systems advertised level of 250,000 IOPS.


Figure 5: Peak RamSan-320 IOPS Performance Using IOMeter

The results clearly display the value of solid state disk. Solid state disks excel at both small and large block random data transfers. In comparison, disk based storage systems truly excel at large block sequential transfers only.

SPC-1 Benchmark Results with the RamSan-320 Solid State Disk

About the Storage Performance Council
The Storage Performance Council (SPC) is a vendor-neutral organization dedicated to the development and application of performance-based storage benchmarks. To ensure the validity of all performance claims, the SPC requires strict compliance to its benchmark specifications and full auditing of all published results by an official SPC auditor and full peer review following a successful audit. SPC member companies include virtually every key vendor in the industry, including Texas Memory Systems.

The Storage Performance Council is the first entity dedicated to helping users understand the value of storage performance and price:performance. Texas Memory Systems shares these objectives with the Storage Performance Council. Many storage benchmarks fail to replicate real world data access patterns. The SPC-1 performance benchmark was designed to accurately replicate real-world online transaction processing (OLTP), which is characterized by intense, random I/O requests made on the storage appliance. This benchmark is the first in a series of benchmarks to be established by the Storage Performance Council.

Initial, Audited Results of the RamSan-320 SPC-1 Benchmark
In March 2004, Texas Memory Systems and the Storage Performance Council broke all current I/O performance records while executing the first published SPC-1 measurement on a solid state disk-the RamSan-320. The SPC auditor approved and submitted for peer review the following results:

Unit tested: RamSan-320 (8 ports)
SPC-1 IOPS: 112,491.34
SPC-1 Price-Performance: $1.50
Total ASU capacity: 68.719 GB
Data protection level: Other Protection Level
Audit Certification No.: A00028

The Storage Performance Council SPC-1 results highlight that solid state disks are the best solution when you want the best performance and the best price:performance. When you look at cost per capacity only, solid state disks appear expensive. However, when you evaluate solutions to improve performance, solid state disks offer the best value of any storage product. In fact, the RamSan-320 produced better SPC- 1 results than equipment priced nearly 10 times higher than the RamSan-320. The SPC derives price from the total cost of the implemented solution, including Fibre Channel infrastructure and relevant support contracts. For details, see the SPC full disclosure report. For details on other Storage Performance Council results, please visit StoragePerformance.org.

The SPC-1 analysis produced some additional interesting findings. First, the Texas Memory Systems test implementation is extremely simple. Where other storage products tested under SPC-1 have included dozens of host bus adapters and switched fabrics, the RamSan simply included eight servers each with one host bus adapter connected to the RamSan-320. Secondly, the response time graphs from the test results show that, even under the heaviest loads, the RamSan never took more than 70 microseconds to return data to the server. For other storage devices, as load increased response times increased. For test details, including the graphs mentioned here, see the full disclosure report on StoragePerformance.org.

Results: Solid State Disk Storage Benefits

Replacing hard drive based storage with a RamSan solid state disk has numerous benefits in improving I/O performance:

Improved Server Efficiency
When slow, conventional storage holds back the potential of expensive processors and servers, efficiency is reduced and money is wasted. Conversely, introducing a fast RamSan solid state disk fully utilizes those servers, resulting in maximized ROI. If your data only travels as fast as the slowest point in the network, then removing that bottleneck results in efficiency gains throughout the system.

Fewer Servers
The drive towards server consolidation means squeezing every drop of performance out of the remaining servers. When a RamSan can improve server efficiency, then that efficiency increase can lead to server consolidation without performance loss. This is especially true in "server-bloated" environments, where adding additional servers or processing power solved the problem of I/O wait time. Consolidating servers and moving the hottest data to a RamSan Solid State Disk reduce TCO (total cost of ownership) across the enterprise.

More Concurrent Users
When you install a RamSan solid state disk, it typically takes the pressure off of whatever system was being thrashed in its place (a RAID array, server system memory, etc.). This approach frees up those resources for other applications and tasks. In the case of query- based applications, adding a RamSan solid state disk can increase the number of concurrent users receiving their data at higher speeds. Conventional thinking suggests that adding concurrent users requires more servers. With the RamSan, you scale concurrent users by improving server efficiency.

Faster Response Times
RamSan solid state disks are famous for consistently decreasing the response times of demanding applications. Without mechanical storage devices to slow down performance, users and applications get data at the speeds they demand. At the core of any enterprise is a critical database. Whether employees, customers, or other servers query it, anyone can benefit from faster response times.

Increased Customer Satisfaction
In many environments, particularly online transaction processing (OLTP), increased customer satisfaction is the first priority. Eliminating I/O bottlenecks with a RamSan solid state disk can improve the performance of all hardware depending on that data. Whether the application is e-commerce, OLTP, hot files storage, or any other use, higher performance, faster response, and greater transactions, means increased user satisfaction.

Higher Profits
Financial, telecom, and e-commerce industries know the value of increased transactions per second. To those industries, every additional transaction that their hardware can carry out directly affects the bottom line. In such a situation, it is easy to see how the RamSan solid state disk quickly pays for itself. This logic, however, can be applied to virtually any mission-critical application that requires a solid state disk to reach its potential. When you compare the cost of a RamSan to alternative solutions that increase application performance from 2x to 10x, the choice becomes easy.

Conclusion

Diagnosing performance problems is easier when administrators can prioritize their potential causes better. Hard disk drive access times are a major cause of I/O bottlenecks. While hard disk drive capacities are increasing, access times are improving at a snail's pace. Therefore, while you may find some performance gains by buying new servers or tuning application code, these solutions do not provide profound results. Solid state disks, non-volatile systems that store data on RAM, are a cost-effective solution to I/O bottlenecks.

Before the Storage Performance Council published independent benchmarks, finding cost-effective performance solutions caused data center managers to rely on marketing and gut instinct only. The Storage Performance Council and their benchmarks are an excellent source of unbiased information on storage performance and its costs. The Texas Memory Systems results show that the RamSan-320 was able to achieve both the highest SPC-1 IOPS result and the lowest cost per SPC-1 IOPS. If you need performance, these results clarify that solid state disks are the least expensive solution. Companies that have implemented solid state disk have seen numerous benefits to the bottom line by making better use of their existing servers, adding concurrent users, reducing response time delays, and improving customer satisfaction.

« Back to Whitepapers Learn more about the RamSan-400 »

RamSan-400 Details

RamSan Products Overview

Request a Price Quote

Success Stories

Oracle Performance Center

Solutions and Applications

 

What Others are Saying

SSDs in the Mainstream
Illuminata Group, Jan 2004

Review: RamSan-320 SSD
PC Pro, Jan 2004


Texas Memory Systems Sales - Call (713) 266-3200

Sign up for the RamSan Mailing List

Home  |  Company  |  Products  |  Support  |  Resources  |  Partners
 Contact Us  |  Legal  |   Library  |  Press  |  Success Stories  |  Privacy Policy

Copyright © 2009 Texas Memory Systems. All Rights Reserved.