News
10/14/2009
08:52 AM
George Crump
George Crump
Commentary
Connect Directly
RSS
E-Mail
50%
50%

Understanding Storage Controller Performance

Storage controllers are the engine that drives the storage system you own. They are essentially a compute engine for storage arrays. Understanding storage controller performance and what can impact storage controllers is an important step in the optimization of your storage environment. It is also something that many storage managers assume is good enough.

Storage controllers are the engine that drives the storage system you own. They are essentially a compute engine for storage arrays. Understanding storage controller performance and what can impact storage controllers is an important step in the optimization of your storage environment. It is also something that many storage managers assume is good enough.Storage controller's performance can be impacted by a host of circumstances. Today's storage systems are asked to do so much more than the first external SCSI arrays. First, they manage significantly more capacity and drive quantity. Capabilities like snapshots, replication and the RAID calculation all impact the storage controller. Further new features like thin provisioning are just adding to the problem. This is why so many storage systems hit maximum performance at about 1/2 the drive population than the brochure states.

Second, storage systems are no longer responsible for servicing the requests of a single server. In shared environments the storage controllers can be responding to dozens if not hundreds of attached servers and workstations. To compound the issue, many environments, thanks to server virtualization, will have multiple server instances making multiple storage I/O requests from a single host. This leads to extremely random and unpredictable workloads in the environment which can saturate controllers.

Today's storage controllers are responding to requests from more performance hungry servers that are attached to them. In web applications for example the storage may be responding to thousands of simultaneous users all accessing the same database or randomly each accessing different photos. Again, in virtualized server environments, these demands can come from 1,000 VMs spread out across a few hundred physical systems.

The classic dual controller architecture itself is misleading. In many cases both controllers are not equally handling the storage I/O for a given RAID volume. Usually one is assigned as the primary and the other as the secondary. The secondary is only used if the primary fails. The result is a single controller, handling all the above highly random conditions, can more realistically get saturated.

The classic response has been to overbuy storage compute muscle. The problem with this is that we all know that today's processors will be replaced by tomorrow's for less money. When you overbuy processing you are paying extra for compute muscle that you may not need until next year or later.

This has lead to some of the major manufacturers following the lead of a few storage innovators to start delivering clustered storage systems. Although how these clusters are assembled and the services they offer vary, they address the storage controller performance bottleneck that we detail in our article "What's Causing the Storage I/O Bottleneck?".

These systems allow continuous scale of capacity, I/O bandwidth as well as storage compute performance. Not every data center is going to encounter storage controller performance issues, and for those data centers standard systems are more than acceptable, but if your data center can cause any of the above conditions then storage controllers are something you need to pay attention to.

Track us on Twitter: http://twitter.com/storageswiss

Subscribe to our RSS feed.

George Crump is lead analyst of Storage Switzerland, an IT analyst firm focused on the storage and virtualization segments. Find Storage Switzerland's disclosure statement here.

Comment  | 
Print  | 
More Insights
Register for Dark Reading Newsletters
White Papers
Flash Poll
Current Issue
Cartoon
DevOps’ Impact on Application Security
DevOps’ Impact on Application Security
Managing the interdependency between software and infrastructure is a thorny challenge. Often, it’s a “developers are from Mars, systems engineers are from Venus” situation.
Video
Slideshows
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2014-0103
Published: 2014-07-29
WebAccess in Zarafa before 7.1.10 and WebApp before 1.6 stores credentials in cleartext, which allows local Apache users to obtain sensitive information by reading the PHP session files.

CVE-2014-0475
Published: 2014-07-29
Multiple directory traversal vulnerabilities in GNU C Library (aka glibc or libc6) before 2.20 allow context-dependent attackers to bypass ForceCommand restrictions and possibly have other unspecified impact via a .. (dot dot) in a (1) LC_*, (2) LANG, or other locale environment variable.

CVE-2014-2226
Published: 2014-07-29
Ubiquiti UniFi Controller before 3.2.1 logs the administrative password hash in syslog messages, which allows man-in-the-middle attackers to obtains sensitive information via unspecified vectors.

CVE-2014-3541
Published: 2014-07-29
The Repositories component in Moodle through 2.3.11, 2.4.x before 2.4.11, 2.5.x before 2.5.7, 2.6.x before 2.6.4, and 2.7.x before 2.7.1 allows remote attackers to conduct PHP object injection attacks and execute arbitrary code via serialized data associated with an add-on.

CVE-2014-3542
Published: 2014-07-29
mod/lti/service.php in Moodle through 2.3.11, 2.4.x before 2.4.11, 2.5.x before 2.5.7, 2.6.x before 2.6.4, and 2.7.x before 2.7.1 allows remote attackers to read arbitrary files via an XML external entity declaration in conjunction with an entity reference, related to an XML External Entity (XXE) is...

Best of the Web
Dark Reading Radio