SlideShare a Scribd company logo
* DRAFT *
Applying Highly Optimized SSD Performance
to the Application Server Environment
By Michael S. Mendola
Sr. Storage Architect
A Mendola White Paper
Contents
Introduction 2
Is SSD Something New? 2
The Spin on How SSD Stores and
Retrieves Data 3
The Three Keys: Form Factor,
Location and Integration 4
Making Globally Accessible SSD
Truly Global 6
Summary 7
Introduction
SSD - Solid-State Disk. It’s probably a safe
bet that by now you are at least aware that
the major alternative to storing data on
spinning disk is replacing that disk with
random access memory which acts like
spinning disk but is much higher
performing.
Have you already considered augmenting or
even replacing spinning disk with SSD?
Maybe you’ve just begun gathering
information or are even ready to start
infusing SSD into your environment. In
either case, we know that you will benefit
greatly from the information provided here.
Is SSD Something New?
You might be surprised to learn that the use
of memory-based data storage actually
preceded magnetic media-based data
storage. Called Auxiliary Memory Units
non-semiconductor memory, made
persistent using electronic capacitors, was
the sole data storage medium until spinning
magnetic drum and disk systems were
designed that were reliable and inexpensive
enough to replace AMU storage.
In the 1970’s, SSD made a come-back
using semiconductor memory which far
eclipsed disk storage in performance but was
still prohibitively expensive to use in any
meaningful quantity. Termed RAM disk
and semiconductor disk, these devices were
housed in large frames and used battery
backup to retain active data. They were
used mainly in supercomputers but
eventually made their way into the
mainframe strata. Here, they were used
mainly for system OS and virtual storage
page pool use. Soon, due to performance,
reliability and price-point improvements,
high performance memory was becoming a
viable alternative to spinning disk for
smaller systems and even found its
way into the burgeoning field of
personal computers (known as RAM
disk).
Even as memory is now becoming
primary “disk”, it has been in use for
many years to augment the
performance of spinning disk.
Memory almost always used as the
front-end data cache in storage array
controllers and is even found in the
electronics of the discrete disk drive
themselves.
Today, with the advent of
inexpensive non-volatile flash-based
memory which provides
“meaningful” data storage capacities
and the elimination of the need for
batteries to retain data, memory-
based disk systems (now called SSD)
have made their way into the
mainstream. They are available to
vastly increase performance across
all compute platforms and
applications. SSD is not only here to
stay, but as it evolves promises to
eventually replace spinning disk for
almost all data storage requirements,
with the probable exception of those
which require protracted retention
periods or a final resting place in
static archives.
Finally, memory systems now used
in SSD devices are being specifically
engineered and tuned to provide
unprecedented I/O performance
(measured in IOPS), reliability,
longevity and energy efficiency.
Replacing spinning disk forever is
indeed the goal, and the race is just
beginning!
The Spin on How SSD Stores and
Retrieves Data
Before moving into examining how SSD is
best used, we will first briefly review how it
operates. This is important to understand as
we set the stage for how to best inject SSD
as an accelerator in the primary storage
environment.
Two types of memory are used in SSD
devices. These are non-volatile flash
memory and the much faster, but volatile
(and much more expensive) DRAM
memory. Without delving too much into the
technical aspects of each, suffice it to say
that flash memory is most widely used
because of it being more cost effective and
its ability to hold data even when power is
removed. DRAM memory has neither of
these qualities, but does perform at higher
speeds with lower latency and is much more
efficient in the way it stores and retrieves
data.
Flash memory is made of a special type of
read-only memory called EEPROM
(Electrically Erasable Read-Only Memory)
that can be erased and “reprogrammed”.
EEPROM “read-only” memory is best
suited for use in semi-permanent
programming storage devices where data
(typically firmware) is stored once and read
many, many times. When used in SSD
devices, flash memory is expected to both
retrieve and store data continuously. Not
specifically designed for this type of heavy
store-erase cycle intensity, the memory cells
wear out, eventually becoming useless
(typical flash write/erase life span is about
100,000 cycles). Also, these devices
actually become slower as they are filled
with data. As a counter measure to the
write/erase life span problem, almost all
SSD designers build-in wear leveling
techniques which count writes and
dynamically re-maps data blocks to other
areas, spreading the wear over a
broader cross section of the SSD
device. Another technique is to
configure the SSD device with more
storage capacity than is actually
presented for use. This, in
conjunction with wear leveling, work
well to bring flash-based SSD MTBF
numbers more in line with that of
their spinning SATA disk
counterparts. To increase speed and
reduce latency even further,
designers will configure
simultaneous access across multiple
flash memory devices.
DRAM-based SSD devices do not
have the write/erase life span
shortcoming, but must always have a
constant source of power to
continually refresh data on the
device. The fastest DRAM memory
uses data refresh cycles which are
closer to system CPU speeds. Still
prohibitively expensive to use as the
sole memory in SSD devices,
DRAM is more often used as the
front-end cache to flash-based
devices in some of the more robust
enterprise-class SSD memory
appliance systems (more on this
later).
The Three Keys: Form Factor,
Location and Integration
Let’s look at form factor. The most
well known and immediately usable
SSD form factor is that which is
configured to directly replace 5.25”
or 2.5” spinning disk devices. Here,
the SSD device is packaged exactly
like the spinning disk, even using the
same SATA or SAS interface. Most
SSD units are purchased in this form
because it is readily installed and
immediately usable.
SSD “drive” in standard 2.5” form factor with SATA interface
Using another familiar form factor are those
devices packaged as discrete PCI cards.
Geared toward low-end servers, these
devices plug directly into the computer PCI
bus and have the advantages of greater
speed and memory density in a smaller
footprint. This form factor is best used to
accelerate database system transaction log
and index performance. The key issue is
ensuring driver availability and OS
compatibility.
SSD “drives” in I/O card form factor using PCI-Express interface
The last major form factor is the memory
appliance. Here, the memory is configured
as discrete DIMM’s (Dual Inline Memory
Module) in a 2U “memory server”
appliance. SSD configured in this form
factor is by far the highest performing and
most flexible implementation available.
Intended for serving disk-emulated storage
to high-end servers and server clusters,
memory appliances are specially
designed with advanced scalability,
serviceability and maintenance
features. Specialized DIMM’s
provide the optimum in speed and
longevity. Failed DIMM’s in a
memory appliance may even be
dynamically replaced by hot spares
and failed units replaced during
normal operations.
Opened memory appliance showing memory DIMM’s. Appliance uses
two PCI-Express interface cards to connect to servers (not shown).
Now that you have a better feel for
how SSD is packaged for use, it’s
time to address the most important
criteria. You’ve heard it said in the
real estate market that the most
important factors are location,
location and finally, location. The
same holds true when determining
where best to inject SSD. Choosing
the right form factor is the first step
as this determines where SSD can be
placed in the data storage
environment.
Because of its high performance-to-
expense ratio, there are many factors
to consider when planning to place
SSD into the storage environment.
The most important step is to
understand as clearly as possible
both the current and anticipated
primary storage capacity and
performance needs for the most
critical business applications.
For all but the smallest of organizations this
is no trivial task and we suggest brining in a
trusted advisor or consultant which is not
only a subject matter expert, but vendor-
neutral. Being vendor-neutral is a key
attribute for any hired help because, as you
might imagine, SSD form factor and
placement options are tightly constrained by
storage system hardware and software and
storage services architecture and
configuration capabilities – it can’t be
expected that any storage vendor or their
resellers will suggest injecting SSD into
your environment in ways that their systems
cannot use it.
Finally, let’s take a look at SSD integration
into the application environment. At first
blush, simply replacing spinning disk units
with their SSD counterparts seems like the
most simple and efficient way to bring SSD
into the environment. This assumption may
be correct, but, like many other things in
life, it depends on at least a few other
considerations. Simply replacing spinning
disk with SSD can overwhelm the server or
storage array in the SAN, especially if too
many are installed. This is because server-
internal and even SAN storage array
controllers are designed to work efficiently
within the limitations of spinning disk; SSD
performance will be hampered and you
won’t achieve the performance you’ve paid
for. Just replacing spinning disk inside a
server (using either disk- or PCI card-based
form factors) will improve the application
server’s disk I/O performance, but can break
the server SAN-to-disk array relationship
that yields the many benefits of networked
storage in a SAN environment, and t his
includes breaking the shared storage
requirements of clustered application
servers. Also, placing discrete SSD devices
into a server or even one or more SAN
storage array limits the benefit to only those
applications which can have access to these
devices by connection. Further,
discrete SSD devices typically must
become part of a RAID group where
portions of the device are used to
store data along with portions of
other devices, whether these are
spinning disk or additional SSD
devices in that particular RAID
group. This can be a problem
because you must buy more SSD
devices (and further loose capacity to
RAID level and formatting) and
performance is limited to the lowest
performing devices in that group.
SSD truly is best implemented where
it can be applied in a global way to
spread the benefits as widely as
possible across many/all enterprise
applications. SSD should placed as a
globally available resource in a
shared storage environment such a in
a SAN-based array (due to controller
and other bottlenecks as discussed
above, your choice of array can
make or break your SSD ROI. Work
with your consultant in choosing
from newer array architectures which
are specifically designed to use SSD
as a globally accessible resource
without limiting its performance).
The ultimate way of making SSD a
globally accessible resource while
even amplifying its performance is
using the memory appliance-based
form factor and attaching this to a
specialized storage controller system
(as opposed to disk storage
controllers within storage arrays).
These specialized storage controllers
are designed to operate
independently of the disk devices
they control (and the protocols
though which they’re accessed) by
vitalizing this physical disk capacity.
SSD is positioned as additional “disk” under
these specialized controllers which make
this a “layer” of targeted application
acceleration across the entire field of
application servers. (You be have guessed
that storage virtualization is a very deep
topic in and of itself, and as such is beyond
the scope of this white paper. Your
consultant should have a broad and detailed
understanding of this subject and should be
able to help you understand the many ways
storage virtualization can be architected in
greatly benefit your current and future
storage environment efficiency in use and
buying power in many ways).
Making Globally Accessible SSD
Truly Global
You’ve chosen the form factor, location and
integration points for your ultra-high
performing and SSD, and you’ve paid a
good chuck of change to buy a relatively
small amout. You know that you are
certainly on the right track, but if you
haven’t already, you will soon realize that
you can’t afford enough of it to make all of
your application performance wishes come
true. The remedy is teiring your SSD, using
it as a “layer” in the primary storage “stack”.
Storage teiring matches varying storage resources to specific application performance and
capacity requirements. This technique achieves the best balance of cost vs. performance.
Tiering is a good method of assigning
storage based specifically on efficiency and
performance criteria. This method allows
you to place data only on the storage that
most closely meets the real-world I/O
performance demand. In fact you are
probably using tiered storage
architecture already, placing most of
your user data on SATA disk while
keeping your most demanding
database and log data on SCSI SAS
or Fibre Channel disk resources. It is
a simple matter to extend this idea by
adding a final top-level tier of SSD
capacity for none but application
data of the most demanding nature.
However, this standard tiering
model, which works very nicely,
now breaks down at the highest level
when such a relatively scarce and
expensive resource as SSD is used
made the top tier in the I/O
performance vs. cost stratification.
Standard or static tiering practices
are not optimal- especially where
SSD is used - because although the
appropriate storage is made to host
the appropriate data, data I/O
performance demands ebb and flow
and the only way to accommodate
this is to manually monitor and move
data between teirs as necessary.
An automated and intelligent data
migration mechanism is required to
make tiering really pay-off –
especially when placing SSD into the
mix. Locate and integrate SSD into
a storage controller environment that
will profile data I/O read/write
frequency and other use patterns and
use this information to automatically
and interactively move data between
tiers. Automatic tiering is important
to make the best use of tierd spinning
disk – it is imperative to achieving
optimal global use of your most
expensive and scarcest of all
resources, the top-level SSD tier.
Summary
The use of memory as disk storage is not
new. Improvements in technology,
packaging and integration capabilities have
made what is now called SSD a mainstream
application accelerator available to
individual users and organizations of every
size and budget. Although at first glance
using SSD seems relatively simple, bringing
the benefits into all but the smallest compute
environments requires understanding and
experience with this technology and the
storage environments through which it will
be put to use. It is recommended that
anyone considering bringing SSD
application acceleration into their
environment consider talking with an
experienced consultant in the data storage
field.

More Related Content

DOCX
5 comparisons measuring ssd and hdd performance
IT Tech
 
PDF
Solid State Drives - Seminar for Computer Engineering Semester 6 - VIT,Univer...
ravipbhat
 
PDF
WHITE PAPER▶ Software Defined Storage at the Speed of Flash
Symantec
 
PPTX
Solid State Drives (Third Generation) 2013
Hemanth HR
 
DOCX
Solid State Drives - Seminar Report for Semester 6 Computer Engineering - VIT...
ravipbhat
 
PDF
Diy raid-recovery
UTPAL SINGH
 
PPT
Solid State Drive (SSD) - SBMathema
Subha Mathema
 
PPTX
Ssd(solid state drive )
Karthik m
 
5 comparisons measuring ssd and hdd performance
IT Tech
 
Solid State Drives - Seminar for Computer Engineering Semester 6 - VIT,Univer...
ravipbhat
 
WHITE PAPER▶ Software Defined Storage at the Speed of Flash
Symantec
 
Solid State Drives (Third Generation) 2013
Hemanth HR
 
Solid State Drives - Seminar Report for Semester 6 Computer Engineering - VIT...
ravipbhat
 
Diy raid-recovery
UTPAL SINGH
 
Solid State Drive (SSD) - SBMathema
Subha Mathema
 
Ssd(solid state drive )
Karthik m
 

What's hot (20)

PDF
Flash Implications in Enterprise Storage Array Designs
EMC
 
PPT
SSD PPT BY SAURABH
Saurabh Kumar
 
DOC
Using preferred read groups in oracle asm michael ault
Louis liu
 
PDF
SSD vs HDD - A Shift In Data Storage by Todd Dinkelman
nomathjobs
 
PPT
Hardware2_Charity
Arianne Bolocon
 
PDF
Understanding hard drive performance
Trường Tiền
 
PPT
Solid state solid state drives
Piyush Rochwani
 
PPTX
Solid state drive (ssd)
Mukesh Mirrey
 
PPTX
Flash Storage Technology 101
Unitiv
 
PPTX
Solid state drives
Veronica Alejandro
 
PPT
Solid state drives
Manmath Agarwal
 
PPTX
SSD - Solid State Drive PPT by Atishay Jain
Atishay Jain
 
PDF
AsawariKhedkar_SSD_HDD_Comparison
Asawari Khedkar
 
PPTX
Solid state drive
Prateek Kumawat
 
DOCX
Seminar report on third generation solid state drive
Atishay Jain
 
PPSX
Comparison between HDD and SSD
Fleurati
 
PPTX
Solid State Drive(ssd) (Pranav)
Pranav Bharti
 
PPTX
Ssd – Solid State Drive
Mild
 
DOCX
Raid the redundant array of independent disks technology overview
IT Tech
 
PPTX
Hard Disk Drive versus Solid State Drive
Dac Khue Nguyen
 
Flash Implications in Enterprise Storage Array Designs
EMC
 
SSD PPT BY SAURABH
Saurabh Kumar
 
Using preferred read groups in oracle asm michael ault
Louis liu
 
SSD vs HDD - A Shift In Data Storage by Todd Dinkelman
nomathjobs
 
Hardware2_Charity
Arianne Bolocon
 
Understanding hard drive performance
Trường Tiền
 
Solid state solid state drives
Piyush Rochwani
 
Solid state drive (ssd)
Mukesh Mirrey
 
Flash Storage Technology 101
Unitiv
 
Solid state drives
Veronica Alejandro
 
Solid state drives
Manmath Agarwal
 
SSD - Solid State Drive PPT by Atishay Jain
Atishay Jain
 
AsawariKhedkar_SSD_HDD_Comparison
Asawari Khedkar
 
Solid state drive
Prateek Kumawat
 
Seminar report on third generation solid state drive
Atishay Jain
 
Comparison between HDD and SSD
Fleurati
 
Solid State Drive(ssd) (Pranav)
Pranav Bharti
 
Ssd – Solid State Drive
Mild
 
Raid the redundant array of independent disks technology overview
IT Tech
 
Hard Disk Drive versus Solid State Drive
Dac Khue Nguyen
 
Ad

Viewers also liked (20)

DOC
Relatório sacp relatório de contribuições recebidas
grazi87
 
PPT
Jornal paulo afosno
paulo
 
PPTX
Ang kalabaw ni juan
greysnet
 
PPTX
Kickoff
osimplex
 
PPTX
Ang kalabaw ni juan
greysnet
 
PPT
Não por força
IMQ
 
PDF
黄金の回転 - 3min ULT
Warlock Report
 
PDF
Stepwise interpretation of ECG - #02 no Dx ID352
Anas Nader
 
PPTX
Mejor periodista tdci 2011
Ezequiel Buzzatto
 
PDF
Basic Photoshop Skills
Tibyaan
 
PDF
ArcGIS for server
EsriGISConferentie
 
PDF
境界を超えた協創 ~bloom beyond the boundaries~
Warlock Report
 
PDF
【Schoo web campus】ゲーミフィケーションについての理解と設計 3限目
schoowebcampus
 
PPTX
Ang kalabaw ni juan
greysnet
 
PDF
How To Think Like An Engineer
wdonegan
 
PDF
I tu, quins tipus de persona ets
folenxarxa
 
PDF
Howling marcus brand devel. keynote
mookie814
 
PPTX
Programa de apoio aos empreendedores
Fernando Francisco
 
PDF
オムニチャネルとは - 顧客体験からすべてが始まる -
NetyearGroup
 
Relatório sacp relatório de contribuições recebidas
grazi87
 
Jornal paulo afosno
paulo
 
Ang kalabaw ni juan
greysnet
 
Kickoff
osimplex
 
Ang kalabaw ni juan
greysnet
 
Não por força
IMQ
 
黄金の回転 - 3min ULT
Warlock Report
 
Stepwise interpretation of ECG - #02 no Dx ID352
Anas Nader
 
Mejor periodista tdci 2011
Ezequiel Buzzatto
 
Basic Photoshop Skills
Tibyaan
 
ArcGIS for server
EsriGISConferentie
 
境界を超えた協創 ~bloom beyond the boundaries~
Warlock Report
 
【Schoo web campus】ゲーミフィケーションについての理解と設計 3限目
schoowebcampus
 
Ang kalabaw ni juan
greysnet
 
How To Think Like An Engineer
wdonegan
 
I tu, quins tipus de persona ets
folenxarxa
 
Howling marcus brand devel. keynote
mookie814
 
Programa de apoio aos empreendedores
Fernando Francisco
 
オムニチャネルとは - 顧客体験からすべてが始まる -
NetyearGroup
 
Ad

Similar to Generic SAN Acceleration White Paper DRAFT (20)

PDF
seminar.pdf
RohitSalve20
 
PPT
A better storage solution
Prateek Chaudhary
 
PDF
SSD Seminar Report
VishalKSetti
 
PPT
Ssd And Enteprise Storage
Frank Zhao
 
DOCX
Solid State Devices
Jordan Hyman
 
PPTX
Deploying ssd in the data center 2014
Howard Marks
 
PDF
Dell whitepaper busting solid state storage myths
Natalie Cerullo
 
PDF
SSD (Solid State Drive)
Imran Hossain
 
PPTX
Selection Of Perfect Memory for SOC design
tusharchauhan96901
 
PDF
eBook: Commercial vs Industrial SSD Storage - Advantech
Advantech Europe E-IOT Business Group
 
PPT
Open Ware Ramsan Dram Ssd
Sidnir Vieira
 
PPTX
Storage (Hard disk drive)
0949778108
 
PPTX
Group assignment 1
bren61
 
PDF
SSDs Deliver More at the Point-of-Processing
Samsung Business USA
 
PDF
Coffee break
Chris O'Neal
 
PPT
Apresentacao Solid Access Corp Presentation Openware 5 20 10
Sidnir Vieira
 
PPTX
2015 deploying flash in the data center
Howard Marks
 
PPTX
2015 deploying flash in the data center
Howard Marks
 
PDF
Designing SSD-friendly Applications for Better Application Performance and Hi...
Zhenyun Zhuang
 
PDF
Next-Gen Storage Solutions: A Deep Dive into SSDs and NVMe
ETechBuy.com
 
seminar.pdf
RohitSalve20
 
A better storage solution
Prateek Chaudhary
 
SSD Seminar Report
VishalKSetti
 
Ssd And Enteprise Storage
Frank Zhao
 
Solid State Devices
Jordan Hyman
 
Deploying ssd in the data center 2014
Howard Marks
 
Dell whitepaper busting solid state storage myths
Natalie Cerullo
 
SSD (Solid State Drive)
Imran Hossain
 
Selection Of Perfect Memory for SOC design
tusharchauhan96901
 
eBook: Commercial vs Industrial SSD Storage - Advantech
Advantech Europe E-IOT Business Group
 
Open Ware Ramsan Dram Ssd
Sidnir Vieira
 
Storage (Hard disk drive)
0949778108
 
Group assignment 1
bren61
 
SSDs Deliver More at the Point-of-Processing
Samsung Business USA
 
Coffee break
Chris O'Neal
 
Apresentacao Solid Access Corp Presentation Openware 5 20 10
Sidnir Vieira
 
2015 deploying flash in the data center
Howard Marks
 
2015 deploying flash in the data center
Howard Marks
 
Designing SSD-friendly Applications for Better Application Performance and Hi...
Zhenyun Zhuang
 
Next-Gen Storage Solutions: A Deep Dive into SSDs and NVMe
ETechBuy.com
 

Generic SAN Acceleration White Paper DRAFT

  • 1. * DRAFT * Applying Highly Optimized SSD Performance to the Application Server Environment By Michael S. Mendola Sr. Storage Architect A Mendola White Paper
  • 2. Contents Introduction 2 Is SSD Something New? 2 The Spin on How SSD Stores and Retrieves Data 3 The Three Keys: Form Factor, Location and Integration 4 Making Globally Accessible SSD Truly Global 6 Summary 7 Introduction SSD - Solid-State Disk. It’s probably a safe bet that by now you are at least aware that the major alternative to storing data on spinning disk is replacing that disk with random access memory which acts like spinning disk but is much higher performing. Have you already considered augmenting or even replacing spinning disk with SSD? Maybe you’ve just begun gathering information or are even ready to start infusing SSD into your environment. In either case, we know that you will benefit greatly from the information provided here. Is SSD Something New? You might be surprised to learn that the use of memory-based data storage actually preceded magnetic media-based data storage. Called Auxiliary Memory Units non-semiconductor memory, made persistent using electronic capacitors, was the sole data storage medium until spinning magnetic drum and disk systems were designed that were reliable and inexpensive enough to replace AMU storage. In the 1970’s, SSD made a come-back using semiconductor memory which far eclipsed disk storage in performance but was still prohibitively expensive to use in any meaningful quantity. Termed RAM disk and semiconductor disk, these devices were housed in large frames and used battery backup to retain active data. They were used mainly in supercomputers but eventually made their way into the mainframe strata. Here, they were used mainly for system OS and virtual storage page pool use. Soon, due to performance, reliability and price-point improvements, high performance memory was becoming a
  • 3. viable alternative to spinning disk for smaller systems and even found its way into the burgeoning field of personal computers (known as RAM disk). Even as memory is now becoming primary “disk”, it has been in use for many years to augment the performance of spinning disk. Memory almost always used as the front-end data cache in storage array controllers and is even found in the electronics of the discrete disk drive themselves. Today, with the advent of inexpensive non-volatile flash-based memory which provides “meaningful” data storage capacities and the elimination of the need for batteries to retain data, memory- based disk systems (now called SSD) have made their way into the mainstream. They are available to vastly increase performance across all compute platforms and applications. SSD is not only here to stay, but as it evolves promises to eventually replace spinning disk for almost all data storage requirements, with the probable exception of those which require protracted retention periods or a final resting place in static archives. Finally, memory systems now used in SSD devices are being specifically engineered and tuned to provide unprecedented I/O performance (measured in IOPS), reliability, longevity and energy efficiency. Replacing spinning disk forever is indeed the goal, and the race is just beginning! The Spin on How SSD Stores and Retrieves Data Before moving into examining how SSD is best used, we will first briefly review how it operates. This is important to understand as we set the stage for how to best inject SSD as an accelerator in the primary storage environment. Two types of memory are used in SSD devices. These are non-volatile flash memory and the much faster, but volatile (and much more expensive) DRAM memory. Without delving too much into the technical aspects of each, suffice it to say that flash memory is most widely used because of it being more cost effective and its ability to hold data even when power is removed. DRAM memory has neither of these qualities, but does perform at higher speeds with lower latency and is much more efficient in the way it stores and retrieves data. Flash memory is made of a special type of read-only memory called EEPROM (Electrically Erasable Read-Only Memory) that can be erased and “reprogrammed”. EEPROM “read-only” memory is best suited for use in semi-permanent programming storage devices where data (typically firmware) is stored once and read many, many times. When used in SSD devices, flash memory is expected to both retrieve and store data continuously. Not specifically designed for this type of heavy store-erase cycle intensity, the memory cells wear out, eventually becoming useless (typical flash write/erase life span is about 100,000 cycles). Also, these devices actually become slower as they are filled with data. As a counter measure to the write/erase life span problem, almost all SSD designers build-in wear leveling techniques which count writes and dynamically re-maps data blocks to other
  • 4. areas, spreading the wear over a broader cross section of the SSD device. Another technique is to configure the SSD device with more storage capacity than is actually presented for use. This, in conjunction with wear leveling, work well to bring flash-based SSD MTBF numbers more in line with that of their spinning SATA disk counterparts. To increase speed and reduce latency even further, designers will configure simultaneous access across multiple flash memory devices. DRAM-based SSD devices do not have the write/erase life span shortcoming, but must always have a constant source of power to continually refresh data on the device. The fastest DRAM memory uses data refresh cycles which are closer to system CPU speeds. Still prohibitively expensive to use as the sole memory in SSD devices, DRAM is more often used as the front-end cache to flash-based devices in some of the more robust enterprise-class SSD memory appliance systems (more on this later). The Three Keys: Form Factor, Location and Integration Let’s look at form factor. The most well known and immediately usable SSD form factor is that which is configured to directly replace 5.25” or 2.5” spinning disk devices. Here, the SSD device is packaged exactly like the spinning disk, even using the same SATA or SAS interface. Most SSD units are purchased in this form because it is readily installed and immediately usable. SSD “drive” in standard 2.5” form factor with SATA interface Using another familiar form factor are those devices packaged as discrete PCI cards. Geared toward low-end servers, these devices plug directly into the computer PCI bus and have the advantages of greater speed and memory density in a smaller footprint. This form factor is best used to accelerate database system transaction log and index performance. The key issue is ensuring driver availability and OS compatibility. SSD “drives” in I/O card form factor using PCI-Express interface The last major form factor is the memory appliance. Here, the memory is configured as discrete DIMM’s (Dual Inline Memory Module) in a 2U “memory server” appliance. SSD configured in this form factor is by far the highest performing and most flexible implementation available. Intended for serving disk-emulated storage to high-end servers and server clusters,
  • 5. memory appliances are specially designed with advanced scalability, serviceability and maintenance features. Specialized DIMM’s provide the optimum in speed and longevity. Failed DIMM’s in a memory appliance may even be dynamically replaced by hot spares and failed units replaced during normal operations. Opened memory appliance showing memory DIMM’s. Appliance uses two PCI-Express interface cards to connect to servers (not shown). Now that you have a better feel for how SSD is packaged for use, it’s time to address the most important criteria. You’ve heard it said in the real estate market that the most important factors are location, location and finally, location. The same holds true when determining where best to inject SSD. Choosing the right form factor is the first step as this determines where SSD can be placed in the data storage environment. Because of its high performance-to- expense ratio, there are many factors to consider when planning to place SSD into the storage environment. The most important step is to understand as clearly as possible both the current and anticipated primary storage capacity and performance needs for the most critical business applications. For all but the smallest of organizations this is no trivial task and we suggest brining in a trusted advisor or consultant which is not only a subject matter expert, but vendor- neutral. Being vendor-neutral is a key attribute for any hired help because, as you might imagine, SSD form factor and placement options are tightly constrained by storage system hardware and software and storage services architecture and configuration capabilities – it can’t be expected that any storage vendor or their resellers will suggest injecting SSD into your environment in ways that their systems cannot use it. Finally, let’s take a look at SSD integration into the application environment. At first blush, simply replacing spinning disk units with their SSD counterparts seems like the most simple and efficient way to bring SSD into the environment. This assumption may be correct, but, like many other things in life, it depends on at least a few other considerations. Simply replacing spinning disk with SSD can overwhelm the server or storage array in the SAN, especially if too many are installed. This is because server- internal and even SAN storage array controllers are designed to work efficiently within the limitations of spinning disk; SSD performance will be hampered and you won’t achieve the performance you’ve paid for. Just replacing spinning disk inside a server (using either disk- or PCI card-based form factors) will improve the application server’s disk I/O performance, but can break the server SAN-to-disk array relationship that yields the many benefits of networked storage in a SAN environment, and t his includes breaking the shared storage requirements of clustered application servers. Also, placing discrete SSD devices into a server or even one or more SAN storage array limits the benefit to only those applications which can have access to these
  • 6. devices by connection. Further, discrete SSD devices typically must become part of a RAID group where portions of the device are used to store data along with portions of other devices, whether these are spinning disk or additional SSD devices in that particular RAID group. This can be a problem because you must buy more SSD devices (and further loose capacity to RAID level and formatting) and performance is limited to the lowest performing devices in that group. SSD truly is best implemented where it can be applied in a global way to spread the benefits as widely as possible across many/all enterprise applications. SSD should placed as a globally available resource in a shared storage environment such a in a SAN-based array (due to controller and other bottlenecks as discussed above, your choice of array can make or break your SSD ROI. Work with your consultant in choosing from newer array architectures which are specifically designed to use SSD as a globally accessible resource without limiting its performance). The ultimate way of making SSD a globally accessible resource while even amplifying its performance is using the memory appliance-based form factor and attaching this to a specialized storage controller system (as opposed to disk storage controllers within storage arrays). These specialized storage controllers are designed to operate independently of the disk devices they control (and the protocols though which they’re accessed) by vitalizing this physical disk capacity. SSD is positioned as additional “disk” under these specialized controllers which make this a “layer” of targeted application acceleration across the entire field of application servers. (You be have guessed that storage virtualization is a very deep topic in and of itself, and as such is beyond the scope of this white paper. Your consultant should have a broad and detailed understanding of this subject and should be able to help you understand the many ways storage virtualization can be architected in greatly benefit your current and future storage environment efficiency in use and buying power in many ways). Making Globally Accessible SSD Truly Global You’ve chosen the form factor, location and integration points for your ultra-high performing and SSD, and you’ve paid a good chuck of change to buy a relatively small amout. You know that you are certainly on the right track, but if you haven’t already, you will soon realize that you can’t afford enough of it to make all of your application performance wishes come true. The remedy is teiring your SSD, using it as a “layer” in the primary storage “stack”. Storage teiring matches varying storage resources to specific application performance and capacity requirements. This technique achieves the best balance of cost vs. performance. Tiering is a good method of assigning storage based specifically on efficiency and performance criteria. This method allows you to place data only on the storage that most closely meets the real-world I/O performance demand. In fact you are
  • 7. probably using tiered storage architecture already, placing most of your user data on SATA disk while keeping your most demanding database and log data on SCSI SAS or Fibre Channel disk resources. It is a simple matter to extend this idea by adding a final top-level tier of SSD capacity for none but application data of the most demanding nature. However, this standard tiering model, which works very nicely, now breaks down at the highest level when such a relatively scarce and expensive resource as SSD is used made the top tier in the I/O performance vs. cost stratification. Standard or static tiering practices are not optimal- especially where SSD is used - because although the appropriate storage is made to host the appropriate data, data I/O performance demands ebb and flow and the only way to accommodate this is to manually monitor and move data between teirs as necessary. An automated and intelligent data migration mechanism is required to make tiering really pay-off – especially when placing SSD into the mix. Locate and integrate SSD into a storage controller environment that will profile data I/O read/write frequency and other use patterns and use this information to automatically and interactively move data between tiers. Automatic tiering is important to make the best use of tierd spinning disk – it is imperative to achieving optimal global use of your most expensive and scarcest of all resources, the top-level SSD tier. Summary The use of memory as disk storage is not new. Improvements in technology, packaging and integration capabilities have made what is now called SSD a mainstream application accelerator available to individual users and organizations of every size and budget. Although at first glance using SSD seems relatively simple, bringing the benefits into all but the smallest compute environments requires understanding and experience with this technology and the storage environments through which it will be put to use. It is recommended that anyone considering bringing SSD application acceleration into their environment consider talking with an experienced consultant in the data storage field.