Storage Basics: What Is I/O and How Can It Be Used To Calculate Storage Requirements?
Storage Basics: What Is I/O and How Can It Be Used To Calculate Storage Requirements?
Storage Basics: What Is I/O and How Can It Be Used To Calculate Storage Requirements?
I/O, IOPS, NAS, SAN, DAS, SSD, SAS, NL-SAS, iSCSI, FC, FCoE, RAID, CASL, STaaS,
HaaS, The list of terminology in the technical world can go on and on, but I will save
everyone from acronym overload! The acronyms I will be focusing on are I/O (Input/Output) and
IOPS (Input/Output Operations Per Second) and how it relates to storage performance needs.
As virtual desktops become more popular, the demand to know about IOPS becomes
increasingly more important. Virtual desktops can ease desktop management and increase
security, but performance requirements need to be considered before taking the leap. Because of
these performance needs, we will be looking at the basics of calculating I/O requirements for a
VDI environment. Based on the findings, I will show why storage andnewer technologies are
needed to run a VDI environment smoothly.
What is I/O:
The term I/O is used to describe any program, operation, or device that transfers data to or from a
computer and to or from a peripheral device. Every transfer is an output from one device and an
input into another.
What is IOPS:
IOPS is a common performance measurement used to benchmark computer storage devices like
hard disk drives (HDD), solid state drives (SSD), and storage area networks (SAN).
In storage systems there are two major factors that drive the requirements and configuration;
capacity and performance. Capacity is pretty straightforward to calculate; gather the current total
used space, estimated growth and some overhead. Performance is the more complicated aspect of
storage. Performance is a measure of how fast a system can accept or produce a given data set or
file.
For the sake of this blog we will be focusing on the basics, meaning we will not be including
added performance from the Controllers, Software, or Cache.
RPM IOPS
SSD 6000
15k 175
10k 125
7.2k 75
Another basic aspect of storage that we must consider is RAID groups. RAID groups are
multiple disk drives placed in a logical unit for performance and/or redundancy. One of the
issues with RAID groups are the write penalties involved, below is a list of the penalties.
RAID
IO Penalty
Level
RAID 0 0
RAID 1 2
RAID 5 4
RAID 6 6
RAID 10 2
RAID DP 2
Lets work with an example on how to calculate the number of 15K disks in a RAID 5 group
required to meet the needed IOPS:
Scenario: We have a 100-person VDI environment with all Power Users (25+ IOPS per user
according to VMware) in an environment that is requiring 2500 IOPS, and the Reads are 40%
and Writes are 60%
Calculation:
((Total Read IOPS + (Total Write IOPS*RAID Penalty))/Disk Speed IOPS) = Total number of
Disks required
((1000+(1500*4))/175) = 40 Disks
Alternate Calculation:
As you can see, solely based on Disk alone to meet the needs of this VDI environment, a good
amount of spinning disks are required. Now imagine the environment is 500 users or 1000 users.
You can start to see the issue that has occurred in the past, performance is unable to keep up with
capacity for spinning disk. Plus, if the industry just kept throwing spinning disk at the issue, the
amount of space and power would prohibit solutions to cost. This is why SSD disks, Flash,
Cache, Controllers, Tiring, etc. have been implemented, to alleviate the disparity between
spinning disk capacity and performance.
The great thing about all the storage vendors out there is that they have been rapidly advancing
storage technologies to meet the needs of items such as VDI. It is important to note that not all
solutions are created equal, nor are the requirements of environments. That is why it is important
to have trusted advisors to gather all needed information to build a viable solution that will meet
the needs of your environment.
https://sdgblue.com/storage-basics-io-can-used-calculate-storage-requirements/