SlideShare uma empresa Scribd logo
1 de 5
Baixar para ler offline
1
Although there are many enterprise-class applications
in which personal storage solid state drives (SSDs) excel
in performance, it is imperative to understand key
design differences to ensure the right SSD is used in the
right application.
This brief discusses some of the key factors that may
impact performance of personal storage SSDs when
used in conventional enterprise-class applications, and
compares how these two types of drives perform.
Different SSDs for Different Applications
SSD performance is optimized for an intended usage
model or application; therefore, comparing SSDs that
are designed for different usage models is a comparison
between fundamentally different products. It is valu-
able to understand some of the performance implica-
tions that arise from using an SSD in an application for
which it was not designed.
Differences in Personal vs. Enterprise
SSD Performance
Dave Glen, Applications Engineer
Micron Technology, Inc.
Technical Marketing Brief
Consider a performance comparison between an SSD
optimized for personal storage (such as mobile and desk-
top computing) and an SSD optimized for mainstream
enterprise applications (such as highly active real-time
databases). In tests where each SSD was exposed to 4KB
random write workloads over an extended period of
time, the optimal performance of the SSDs varied depend-
ing on the target application, as shown in Figure 1.
In this example, when the target application generates
constant random write traffic for an extended period,
the write performance region of most significance (that
is, with the greatest relevance to the intended applica-
tion) is the steady state region (shown at the right of the
graph). The highest-performing drive in this case is the
mainstream enterprise SSD.
Conversely, if the target application produces fewer
writes that are not as constant (that is, a bursty work-
load), the write performance region of most signifi-
cance is the fresh-out-of-box (FOB) region (shown at the
left of the graph). The highest-performing SSD in this
case is the personal storage SSD.
Figure 1: Random Write Performance—Enterprise vs. Personal Storage SSD
90,000
80,000
70,000
60,000
50,000
40,000
30,000
20,000
10,000
0
0 50 100 150 200
Minutes
250 300 350 400 450 500
4KBRandomWriteIOPS
Personal Storage SSD
Mainstream Enterprise SSD
2
It is important to note that the comparison on page 1 is
only one aspect of drive performance and is not a com-
plete representation for all applications, usage models,
or benchmarks. It does, however, illustrate that what
constitutes good performance is subjective to the target
application, even when comparing the same metric.
Understanding Over-Provisioning
Fundamentally, over-provisioning is extra media space
on an SSD that does not contain user data. Every SSD
contains some level of over-provisioning; and some
portion of over-provisioning contains internal drive
data such as firmware images, flash translation layer
(FTL) information, and data redundancy information.
Additionally, some of the total NAND media space, called
effective over-provisioning, does not contain user data or
drive internal data, and, therefore, can be used to store
incoming write data.
In the comparison on page 1, the mainstream enterprise
SSD contained considerably more over-provisioning com-
pared to the personal storage SSD, and that difference
plays a critical role in steady state random performance.
Introduction to Garbage Collection
Because NAND media that contains data must first
be erased before it can be written to, it is important
for any NAND-based SSD to maintain blocks of NAND
that are already erased so that new write data may be
stored. A process known as garbage collection accom-
plishes this in two steps.
The first step separates the latest (valid) copies of user
data from the obsolete (invalid) copies of user data to
create blocks of NAND that contain only obsolete data.
The second step is to erase the blocks containing only
obsolete data to produce freshly erased blocks that can
be used to store incoming write data.
To better understand garbage collection, consider the
example in Figure 2. A hypothetical storage device
contains 256 units of nonerased memory, including both
valid and invalid data. One device contains 7% effective
over-provisioning and the other contains 25% effective
over-provisioning. The device may only write new infor-
mation to an erased location, and the device may only
erase complete vertical lines in the memory array.
To erase one line, the drive must first copy the valid data
into a new line so that the previous line contains only
invalid data.
Figure 2 shows how the amount of effective over-provi-
sioning affects the amount of data that must be moved
for the device to produce an erasable line. (The invalid
data locations were determined randomly, as would be
the case for a random workload.)
Differences in Personal vs. Enterprise SSD Performance
Figure 2: Garbage Collection in a Randomly Filled Storage Device
Valid Data Invalid Data Data to be moved
7% Effective Over-Provisioning
Valid data to move: 12
25% Effective Over-Provisioning
Valid data to move: 9
3
Differences in Personal vs. Enterprise SSD Performance
In the 7% effective over-provisioning example, the device
must move 12 valid data locations to erase a line. The 12
valid data locations then need to be moved to an erased
line of 16 write-available locations. The device then erases
the old line to prepare it for the next round of garbage
collection. This produces a net gain of four write-available
units, because all except four units of the previously
erased line were used to store the valid data. After four
more units of data are written, the process repeats.
In the 25% effective over-provisioning example, the
device must move nine valid data locations to erase
a line. The nine valid data locations then need to be
moved to an erased line of 16 write-available units. This
produces a net gain of seven write-available units. After
seven more units of data are written, the process repeats.
The 25% over-provisioning example has two advan-
tages over the 7% over-provisioning example:
• Fewer valid data locations need to be moved
(9 versus 12)
• Each time garbage collection occurs there is a greater
net gain in write-available units (seven versus four),
which means for the same amount of write traffic,
garbage collection is needed half as often.
The result of these advantages is improved random
write performance and decreased write amplification.
Over-Provisioning
and Random Workloads
An SSD’s effective over-provisioning is the ratio of invalid
data to valid data. The amount of effective over-pro-
visioning on an SSD can be amplified by increasing the
number of logical blocks that do not contain valid data.
The example in Figure 3 demonstrates the impact of
effective over-provisioning on performance. In the
example, the same tests were performed on the same
SSD containing the same firmware installed in the same
system. The only variable was the level of effective
over-provisioning on the SSD.
For these tests:
• All user data was removed from the SSD and the SSD
was returned to FOB conditions using the SECURITY
ERASE ATA command.
• The accessible area of the SSD was decreased, and
therefore, the level of effective over-provisioning
increased, using the SET MAX ADDRESS ATA command.
The tests showed:
• Additional over-provisioning does not increase the
performance from FOB conditions and only has an
effect after the drive has been filled with data.
• Increasing effective over-provisioning results in a
continuous increase in steady state random write
performance.
Figure 3: Over-Provisioning and Random Write Workloads
7.4% Effective OP
53.4% Effective OP
19.3% Effective OP
79.0% Effective OP
34.2% Effective OP
114.8% Effective OP
1.10
1.00
.90
.80
.70
.60
.50
.40
.30
.20
.10
.00
0 50 100 150 200 250 300 350 400 500450
Minutes
4KBRandomWriteIOPSNormalizedtoFOB
4
Differences in Personal vs. Enterprise SSD Performance
Figure 4: Garbage Collection in a Sequentially Preconditioned Storage Device
Although the numbers may change based on the
drive tested, the relative results and overall principle
are universally applicable. As the random steady
state performance improves, the write amplification
decreases because of the improvements in garbage
collection, as discussed in the previous section.
Over-Provisioning
and Sequential Workloads
The previous section demonstrated the effect of over-
provisioning on random write performance and write
amplification under random workloads. Because sequen-
tial workloads are fundamentally different, we examine
two cases in which the drive is preconditioned differently.
Case 1: Sequential Preconditioning
When an SSD is subjected to a sequential write work-
load, the data on the drive typically gets laid out in a
continuous pattern on the NAND media. When this
pattern persists across the entire NAND array, the drive
is considered to be sequentially preconditioned. When
an SSD is then sequentially refilled, continuous sections
of the NAND media become invalidated at once.
Figure 4 shows that because of sequential precondi-
tioning, the data is arranged continuously across the
NAND media. When subjected to a sequential work-
load, the data will therefore be invalidated (replaced
with new data on the same logical block address [LBA])
in a continuous pattern. When this occurs, garbage
collection is not needed to relocate data because
continuous lines of old data already exist and can be
erased without incurring a performance drop or addi-
tional write amplification. Therefore, adding over-provi-
sioning does not improve sequential write performance.
Case 2: Random Preconditioning
When a drive has been preconditioned with a random
workload, the valid data is randomly scattered across
the NAND media (as shown in Figure 2). Then, when
the drive is subjected to a sequential workload, it
produces a random pattern of invalid data as new
sequential data replaces old random data. Because the
invalid data is randomly distributed, garbage collec-
tion must relocate valid data, which means added
over-provisioning would increase performance.
After a continuous sequential workload is applied for a
sufficient period of time, however, the drive will return
to a sequentially preconditioned state, as in case 1. (The
period of time this takes varies depending on the drive.)
Sequential performance with sequential precondi-
tioning (case 1) is always higher than sequential perfor-
mance with random preconditioning (case 2). The level
of over-provisioning on the drive only changes how
much degradation occurs, as in case 2.
Sequentially Filled and Refilled (7% OP)
Valid Data Invalid Data Data to be moved
Valid data to move: 0
Sequentially Filled and Refilled (25% OP)
Valid data to move: 0
5
Differences in Personal vs. Enterprise SSD Performance
micron.com
Products are warranted only to meet Micron’s production data sheet
specifications. Products and specifications are subject to change
without notice.
©2013 Micron Technology, Inc. Micron and the Micron logo are trademarks of Micron Technology,
Inc. All other trademarks are the property of their respective owners. All rights reserved.
12/13 EN.L P:11446
Write Buffering and
Steady State Performance
Traditionally, write buffering has been used to increase
instantaneous, or burst, I/O performance and has not
been regarded as a factor in sustained performance.
For SSDs, the assumption that a volatile write buffer has
no effect on sustained performance is not necessarily
true, because parallelism is critical for SSD performance.
One method for increasing parallelism is a process
known as write accumulation, where several smaller
WRITE operations are combined into a larger WRITE
operation across multiple physical NAND die. This
process optimizes WRITE operations and produces the
greatest amount of data written with the least amount
of media busy time. To take advantage of write accu-
mulation, the drive must have some form of write
buffer in which to accumulate WRITE commands.
Some Micron enterprise SSDs have enough energy
storage capability to protect all data in a write accu-
mulation buffer from data loss during a power-loss
event. This enables the drive to safely accumulate
WRITE commands, even when the volatile write
buffer has been disabled. Micron personal storage
SSDs, however, typically do not have this capability.
In a conventional personal storage application such
as personal computing, this difference is inconse-
quential because personal storage applications nearly
always operate with the volatile write cache enabled.
However, in applications where the volatile write
cache is disabled, these personal storage drives could
experience reduced performance.
Summary
Many factors affect how well an SSD performs in a
particular application. The way an application accesses
the SSD can have a significant impact on SSD perfor-
mance, endurance, and reliability.
It is important for system designers to understand some
of the key differences between personal storage and
enterprise SSDs, as outlined in this technical marketing
brief, to ensure an optimal fit for their usage model.

Mais conteúdo relacionado

Mais procurados

Randomizing Data With SQL Server
Randomizing Data With SQL ServerRandomizing Data With SQL Server
Randomizing Data With SQL ServerWally Pons
 
Whitepaper_Cassandra_Datastax_Final
Whitepaper_Cassandra_Datastax_FinalWhitepaper_Cassandra_Datastax_Final
Whitepaper_Cassandra_Datastax_FinalMichele Hunter
 
MS SQL Backups explained by a DBA
MS SQL Backups explained by a DBAMS SQL Backups explained by a DBA
MS SQL Backups explained by a DBAWally Pons
 
Db2 performance tuning for dummies
Db2 performance tuning for dummiesDb2 performance tuning for dummies
Db2 performance tuning for dummiesAngel Dueñas Neyra
 
Five Tuning Tips For Your Datawarehouse
Five Tuning Tips For Your DatawarehouseFive Tuning Tips For Your Datawarehouse
Five Tuning Tips For Your DatawarehouseJeff Moss
 
Optimized dso data activation using massive parallel processing in sap net we...
Optimized dso data activation using massive parallel processing in sap net we...Optimized dso data activation using massive parallel processing in sap net we...
Optimized dso data activation using massive parallel processing in sap net we...Nuthan Kishore
 
Essbase ASO and BSO tuning
Essbase ASO and BSO tuningEssbase ASO and BSO tuning
Essbase ASO and BSO tuningsodhiranga
 
Sistemas operacionais raid
Sistemas operacionais   raidSistemas operacionais   raid
Sistemas operacionais raidCarlos Melo
 
IBM DB2 for z/OS Administration Basics
IBM DB2 for z/OS Administration BasicsIBM DB2 for z/OS Administration Basics
IBM DB2 for z/OS Administration BasicsIBM
 
database backup and recovery
database backup and recoverydatabase backup and recovery
database backup and recoverysdrhr
 
Db2 Important questions to read
Db2 Important questions to readDb2 Important questions to read
Db2 Important questions to readPrasanth Dusi
 
Insiders Guide- Managing Storage Performance
Insiders Guide- Managing Storage PerformanceInsiders Guide- Managing Storage Performance
Insiders Guide- Managing Storage PerformanceDataCore Software
 
DB2UDB_the_Basics Day 6
DB2UDB_the_Basics Day 6DB2UDB_the_Basics Day 6
DB2UDB_the_Basics Day 6Pranav Prakash
 
DB2 and Storage Management
DB2 and Storage ManagementDB2 and Storage Management
DB2 and Storage ManagementCraig Mullins
 
Raid the redundant array of independent disks technology overview
Raid the redundant array of independent disks technology overviewRaid the redundant array of independent disks technology overview
Raid the redundant array of independent disks technology overviewIT Tech
 
Ceph Day Beijing - Ceph on All-Flash Storage - Breaking Performance Barriers
Ceph Day Beijing - Ceph on All-Flash Storage - Breaking Performance BarriersCeph Day Beijing - Ceph on All-Flash Storage - Breaking Performance Barriers
Ceph Day Beijing - Ceph on All-Flash Storage - Breaking Performance BarriersCeph Community
 
Paragon alignment tool - white paper
Paragon alignment tool - white paperParagon alignment tool - white paper
Paragon alignment tool - white paperdegarden
 

Mais procurados (19)

Randomizing Data With SQL Server
Randomizing Data With SQL ServerRandomizing Data With SQL Server
Randomizing Data With SQL Server
 
Whitepaper_Cassandra_Datastax_Final
Whitepaper_Cassandra_Datastax_FinalWhitepaper_Cassandra_Datastax_Final
Whitepaper_Cassandra_Datastax_Final
 
MS SQL Backups explained by a DBA
MS SQL Backups explained by a DBAMS SQL Backups explained by a DBA
MS SQL Backups explained by a DBA
 
Db2 performance tuning for dummies
Db2 performance tuning for dummiesDb2 performance tuning for dummies
Db2 performance tuning for dummies
 
Five Tuning Tips For Your Datawarehouse
Five Tuning Tips For Your DatawarehouseFive Tuning Tips For Your Datawarehouse
Five Tuning Tips For Your Datawarehouse
 
Optimized dso data activation using massive parallel processing in sap net we...
Optimized dso data activation using massive parallel processing in sap net we...Optimized dso data activation using massive parallel processing in sap net we...
Optimized dso data activation using massive parallel processing in sap net we...
 
Essbase ASO and BSO tuning
Essbase ASO and BSO tuningEssbase ASO and BSO tuning
Essbase ASO and BSO tuning
 
Sistemas operacionais raid
Sistemas operacionais   raidSistemas operacionais   raid
Sistemas operacionais raid
 
IBM DB2 for z/OS Administration Basics
IBM DB2 for z/OS Administration BasicsIBM DB2 for z/OS Administration Basics
IBM DB2 for z/OS Administration Basics
 
database backup and recovery
database backup and recoverydatabase backup and recovery
database backup and recovery
 
Db2 Important questions to read
Db2 Important questions to readDb2 Important questions to read
Db2 Important questions to read
 
Teradata a z
Teradata a zTeradata a z
Teradata a z
 
Column oriented Transactions
Column oriented TransactionsColumn oriented Transactions
Column oriented Transactions
 
Insiders Guide- Managing Storage Performance
Insiders Guide- Managing Storage PerformanceInsiders Guide- Managing Storage Performance
Insiders Guide- Managing Storage Performance
 
DB2UDB_the_Basics Day 6
DB2UDB_the_Basics Day 6DB2UDB_the_Basics Day 6
DB2UDB_the_Basics Day 6
 
DB2 and Storage Management
DB2 and Storage ManagementDB2 and Storage Management
DB2 and Storage Management
 
Raid the redundant array of independent disks technology overview
Raid the redundant array of independent disks technology overviewRaid the redundant array of independent disks technology overview
Raid the redundant array of independent disks technology overview
 
Ceph Day Beijing - Ceph on All-Flash Storage - Breaking Performance Barriers
Ceph Day Beijing - Ceph on All-Flash Storage - Breaking Performance BarriersCeph Day Beijing - Ceph on All-Flash Storage - Breaking Performance Barriers
Ceph Day Beijing - Ceph on All-Flash Storage - Breaking Performance Barriers
 
Paragon alignment tool - white paper
Paragon alignment tool - white paperParagon alignment tool - white paper
Paragon alignment tool - white paper
 

Semelhante a Using the Right SSD for the Job

Designing SSD-friendly Applications for Better Application Performance and Hi...
Designing SSD-friendly Applications for Better Application Performance and Hi...Designing SSD-friendly Applications for Better Application Performance and Hi...
Designing SSD-friendly Applications for Better Application Performance and Hi...Zhenyun Zhuang
 
Sansymphony v10-psp1-new-features-overview
Sansymphony v10-psp1-new-features-overviewSansymphony v10-psp1-new-features-overview
Sansymphony v10-psp1-new-features-overviewPatrick Tang
 
over_provisioning_m600_for_data_center_apps_tech_brief
over_provisioning_m600_for_data_center_apps_tech_briefover_provisioning_m600_for_data_center_apps_tech_brief
over_provisioning_m600_for_data_center_apps_tech_briefDave Glen
 
Virtualizing Business Critical Applications
Virtualizing Business Critical ApplicationsVirtualizing Business Critical Applications
Virtualizing Business Critical ApplicationsDataCore Software
 
Ibm db2 analytics accelerator high availability and disaster recovery
Ibm db2 analytics accelerator  high availability and disaster recoveryIbm db2 analytics accelerator  high availability and disaster recovery
Ibm db2 analytics accelerator high availability and disaster recoverybupbechanhgmail
 
Demartek lenovo s3200_mixed_workload_environment_2016-01
Demartek lenovo s3200_mixed_workload_environment_2016-01Demartek lenovo s3200_mixed_workload_environment_2016-01
Demartek lenovo s3200_mixed_workload_environment_2016-01Lenovo Data Center
 
Demartek Lenovo Storage S3200 i a mixed workload environment_2016-01
Demartek Lenovo Storage S3200  i a mixed workload environment_2016-01Demartek Lenovo Storage S3200  i a mixed workload environment_2016-01
Demartek Lenovo Storage S3200 i a mixed workload environment_2016-01Lenovo Data Center
 
Speeding time to insight: The Dell PowerEdge C6620 with Dell PERC 12 RAID con...
Speeding time to insight: The Dell PowerEdge C6620 with Dell PERC 12 RAID con...Speeding time to insight: The Dell PowerEdge C6620 with Dell PERC 12 RAID con...
Speeding time to insight: The Dell PowerEdge C6620 with Dell PERC 12 RAID con...Principled Technologies
 
Demartek lenovo s3200_sql_server_evaluation_2016-01
Demartek lenovo s3200_sql_server_evaluation_2016-01Demartek lenovo s3200_sql_server_evaluation_2016-01
Demartek lenovo s3200_sql_server_evaluation_2016-01Lenovo Data Center
 
DataCluster
DataClusterDataCluster
DataClustergystell
 
Performance comparison: Samsung solid-state drive vs. hard disk drive in a De...
Performance comparison: Samsung solid-state drive vs. hard disk drive in a De...Performance comparison: Samsung solid-state drive vs. hard disk drive in a De...
Performance comparison: Samsung solid-state drive vs. hard disk drive in a De...Principled Technologies
 
Getting Started With Amazon Redshift
Getting Started With Amazon Redshift Getting Started With Amazon Redshift
Getting Started With Amazon Redshift Matillion
 
Realize better value and performance migrating from Azure Database for Postgr...
Realize better value and performance migrating from Azure Database for Postgr...Realize better value and performance migrating from Azure Database for Postgr...
Realize better value and performance migrating from Azure Database for Postgr...Principled Technologies
 
Comparison of In-memory Data Platforms
Comparison of In-memory Data PlatformsComparison of In-memory Data Platforms
Comparison of In-memory Data PlatformsAmir Mahdi Akbari
 
How Do I Know My SQL & Virtual Environments Are Ready for SSD?
How Do I Know My SQL & Virtual Environments Are Ready for SSD?How Do I Know My SQL & Virtual Environments Are Ready for SSD?
How Do I Know My SQL & Virtual Environments Are Ready for SSD?SolarWinds
 
OLTP with Dell EqualLogic hybrid arrays: A comparative study with an industry...
OLTP with Dell EqualLogic hybrid arrays: A comparative study with an industry...OLTP with Dell EqualLogic hybrid arrays: A comparative study with an industry...
OLTP with Dell EqualLogic hybrid arrays: A comparative study with an industry...Principled Technologies
 
Using ТРСС to study Firebird performance
Using ТРСС to study Firebird performanceUsing ТРСС to study Firebird performance
Using ТРСС to study Firebird performanceMind The Firebird
 
Study of bad block management and wear leveling in
Study of bad block management and wear leveling inStudy of bad block management and wear leveling in
Study of bad block management and wear leveling ineSAT Publishing House
 
Performance Tuning
Performance TuningPerformance Tuning
Performance TuningJannet Peetz
 

Semelhante a Using the Right SSD for the Job (20)

Designing SSD-friendly Applications for Better Application Performance and Hi...
Designing SSD-friendly Applications for Better Application Performance and Hi...Designing SSD-friendly Applications for Better Application Performance and Hi...
Designing SSD-friendly Applications for Better Application Performance and Hi...
 
Sansymphony v10-psp1-new-features-overview
Sansymphony v10-psp1-new-features-overviewSansymphony v10-psp1-new-features-overview
Sansymphony v10-psp1-new-features-overview
 
over_provisioning_m600_for_data_center_apps_tech_brief
over_provisioning_m600_for_data_center_apps_tech_briefover_provisioning_m600_for_data_center_apps_tech_brief
over_provisioning_m600_for_data_center_apps_tech_brief
 
Virtualizing Business Critical Applications
Virtualizing Business Critical ApplicationsVirtualizing Business Critical Applications
Virtualizing Business Critical Applications
 
Ibm db2 analytics accelerator high availability and disaster recovery
Ibm db2 analytics accelerator  high availability and disaster recoveryIbm db2 analytics accelerator  high availability and disaster recovery
Ibm db2 analytics accelerator high availability and disaster recovery
 
Demartek lenovo s3200_mixed_workload_environment_2016-01
Demartek lenovo s3200_mixed_workload_environment_2016-01Demartek lenovo s3200_mixed_workload_environment_2016-01
Demartek lenovo s3200_mixed_workload_environment_2016-01
 
Raid
Raid Raid
Raid
 
Demartek Lenovo Storage S3200 i a mixed workload environment_2016-01
Demartek Lenovo Storage S3200  i a mixed workload environment_2016-01Demartek Lenovo Storage S3200  i a mixed workload environment_2016-01
Demartek Lenovo Storage S3200 i a mixed workload environment_2016-01
 
Speeding time to insight: The Dell PowerEdge C6620 with Dell PERC 12 RAID con...
Speeding time to insight: The Dell PowerEdge C6620 with Dell PERC 12 RAID con...Speeding time to insight: The Dell PowerEdge C6620 with Dell PERC 12 RAID con...
Speeding time to insight: The Dell PowerEdge C6620 with Dell PERC 12 RAID con...
 
Demartek lenovo s3200_sql_server_evaluation_2016-01
Demartek lenovo s3200_sql_server_evaluation_2016-01Demartek lenovo s3200_sql_server_evaluation_2016-01
Demartek lenovo s3200_sql_server_evaluation_2016-01
 
DataCluster
DataClusterDataCluster
DataCluster
 
Performance comparison: Samsung solid-state drive vs. hard disk drive in a De...
Performance comparison: Samsung solid-state drive vs. hard disk drive in a De...Performance comparison: Samsung solid-state drive vs. hard disk drive in a De...
Performance comparison: Samsung solid-state drive vs. hard disk drive in a De...
 
Getting Started With Amazon Redshift
Getting Started With Amazon Redshift Getting Started With Amazon Redshift
Getting Started With Amazon Redshift
 
Realize better value and performance migrating from Azure Database for Postgr...
Realize better value and performance migrating from Azure Database for Postgr...Realize better value and performance migrating from Azure Database for Postgr...
Realize better value and performance migrating from Azure Database for Postgr...
 
Comparison of In-memory Data Platforms
Comparison of In-memory Data PlatformsComparison of In-memory Data Platforms
Comparison of In-memory Data Platforms
 
How Do I Know My SQL & Virtual Environments Are Ready for SSD?
How Do I Know My SQL & Virtual Environments Are Ready for SSD?How Do I Know My SQL & Virtual Environments Are Ready for SSD?
How Do I Know My SQL & Virtual Environments Are Ready for SSD?
 
OLTP with Dell EqualLogic hybrid arrays: A comparative study with an industry...
OLTP with Dell EqualLogic hybrid arrays: A comparative study with an industry...OLTP with Dell EqualLogic hybrid arrays: A comparative study with an industry...
OLTP with Dell EqualLogic hybrid arrays: A comparative study with an industry...
 
Using ТРСС to study Firebird performance
Using ТРСС to study Firebird performanceUsing ТРСС to study Firebird performance
Using ТРСС to study Firebird performance
 
Study of bad block management and wear leveling in
Study of bad block management and wear leveling inStudy of bad block management and wear leveling in
Study of bad block management and wear leveling in
 
Performance Tuning
Performance TuningPerformance Tuning
Performance Tuning
 

Using the Right SSD for the Job

  • 1. 1 Although there are many enterprise-class applications in which personal storage solid state drives (SSDs) excel in performance, it is imperative to understand key design differences to ensure the right SSD is used in the right application. This brief discusses some of the key factors that may impact performance of personal storage SSDs when used in conventional enterprise-class applications, and compares how these two types of drives perform. Different SSDs for Different Applications SSD performance is optimized for an intended usage model or application; therefore, comparing SSDs that are designed for different usage models is a comparison between fundamentally different products. It is valu- able to understand some of the performance implica- tions that arise from using an SSD in an application for which it was not designed. Differences in Personal vs. Enterprise SSD Performance Dave Glen, Applications Engineer Micron Technology, Inc. Technical Marketing Brief Consider a performance comparison between an SSD optimized for personal storage (such as mobile and desk- top computing) and an SSD optimized for mainstream enterprise applications (such as highly active real-time databases). In tests where each SSD was exposed to 4KB random write workloads over an extended period of time, the optimal performance of the SSDs varied depend- ing on the target application, as shown in Figure 1. In this example, when the target application generates constant random write traffic for an extended period, the write performance region of most significance (that is, with the greatest relevance to the intended applica- tion) is the steady state region (shown at the right of the graph). The highest-performing drive in this case is the mainstream enterprise SSD. Conversely, if the target application produces fewer writes that are not as constant (that is, a bursty work- load), the write performance region of most signifi- cance is the fresh-out-of-box (FOB) region (shown at the left of the graph). The highest-performing SSD in this case is the personal storage SSD. Figure 1: Random Write Performance—Enterprise vs. Personal Storage SSD 90,000 80,000 70,000 60,000 50,000 40,000 30,000 20,000 10,000 0 0 50 100 150 200 Minutes 250 300 350 400 450 500 4KBRandomWriteIOPS Personal Storage SSD Mainstream Enterprise SSD
  • 2. 2 It is important to note that the comparison on page 1 is only one aspect of drive performance and is not a com- plete representation for all applications, usage models, or benchmarks. It does, however, illustrate that what constitutes good performance is subjective to the target application, even when comparing the same metric. Understanding Over-Provisioning Fundamentally, over-provisioning is extra media space on an SSD that does not contain user data. Every SSD contains some level of over-provisioning; and some portion of over-provisioning contains internal drive data such as firmware images, flash translation layer (FTL) information, and data redundancy information. Additionally, some of the total NAND media space, called effective over-provisioning, does not contain user data or drive internal data, and, therefore, can be used to store incoming write data. In the comparison on page 1, the mainstream enterprise SSD contained considerably more over-provisioning com- pared to the personal storage SSD, and that difference plays a critical role in steady state random performance. Introduction to Garbage Collection Because NAND media that contains data must first be erased before it can be written to, it is important for any NAND-based SSD to maintain blocks of NAND that are already erased so that new write data may be stored. A process known as garbage collection accom- plishes this in two steps. The first step separates the latest (valid) copies of user data from the obsolete (invalid) copies of user data to create blocks of NAND that contain only obsolete data. The second step is to erase the blocks containing only obsolete data to produce freshly erased blocks that can be used to store incoming write data. To better understand garbage collection, consider the example in Figure 2. A hypothetical storage device contains 256 units of nonerased memory, including both valid and invalid data. One device contains 7% effective over-provisioning and the other contains 25% effective over-provisioning. The device may only write new infor- mation to an erased location, and the device may only erase complete vertical lines in the memory array. To erase one line, the drive must first copy the valid data into a new line so that the previous line contains only invalid data. Figure 2 shows how the amount of effective over-provi- sioning affects the amount of data that must be moved for the device to produce an erasable line. (The invalid data locations were determined randomly, as would be the case for a random workload.) Differences in Personal vs. Enterprise SSD Performance Figure 2: Garbage Collection in a Randomly Filled Storage Device Valid Data Invalid Data Data to be moved 7% Effective Over-Provisioning Valid data to move: 12 25% Effective Over-Provisioning Valid data to move: 9
  • 3. 3 Differences in Personal vs. Enterprise SSD Performance In the 7% effective over-provisioning example, the device must move 12 valid data locations to erase a line. The 12 valid data locations then need to be moved to an erased line of 16 write-available locations. The device then erases the old line to prepare it for the next round of garbage collection. This produces a net gain of four write-available units, because all except four units of the previously erased line were used to store the valid data. After four more units of data are written, the process repeats. In the 25% effective over-provisioning example, the device must move nine valid data locations to erase a line. The nine valid data locations then need to be moved to an erased line of 16 write-available units. This produces a net gain of seven write-available units. After seven more units of data are written, the process repeats. The 25% over-provisioning example has two advan- tages over the 7% over-provisioning example: • Fewer valid data locations need to be moved (9 versus 12) • Each time garbage collection occurs there is a greater net gain in write-available units (seven versus four), which means for the same amount of write traffic, garbage collection is needed half as often. The result of these advantages is improved random write performance and decreased write amplification. Over-Provisioning and Random Workloads An SSD’s effective over-provisioning is the ratio of invalid data to valid data. The amount of effective over-pro- visioning on an SSD can be amplified by increasing the number of logical blocks that do not contain valid data. The example in Figure 3 demonstrates the impact of effective over-provisioning on performance. In the example, the same tests were performed on the same SSD containing the same firmware installed in the same system. The only variable was the level of effective over-provisioning on the SSD. For these tests: • All user data was removed from the SSD and the SSD was returned to FOB conditions using the SECURITY ERASE ATA command. • The accessible area of the SSD was decreased, and therefore, the level of effective over-provisioning increased, using the SET MAX ADDRESS ATA command. The tests showed: • Additional over-provisioning does not increase the performance from FOB conditions and only has an effect after the drive has been filled with data. • Increasing effective over-provisioning results in a continuous increase in steady state random write performance. Figure 3: Over-Provisioning and Random Write Workloads 7.4% Effective OP 53.4% Effective OP 19.3% Effective OP 79.0% Effective OP 34.2% Effective OP 114.8% Effective OP 1.10 1.00 .90 .80 .70 .60 .50 .40 .30 .20 .10 .00 0 50 100 150 200 250 300 350 400 500450 Minutes 4KBRandomWriteIOPSNormalizedtoFOB
  • 4. 4 Differences in Personal vs. Enterprise SSD Performance Figure 4: Garbage Collection in a Sequentially Preconditioned Storage Device Although the numbers may change based on the drive tested, the relative results and overall principle are universally applicable. As the random steady state performance improves, the write amplification decreases because of the improvements in garbage collection, as discussed in the previous section. Over-Provisioning and Sequential Workloads The previous section demonstrated the effect of over- provisioning on random write performance and write amplification under random workloads. Because sequen- tial workloads are fundamentally different, we examine two cases in which the drive is preconditioned differently. Case 1: Sequential Preconditioning When an SSD is subjected to a sequential write work- load, the data on the drive typically gets laid out in a continuous pattern on the NAND media. When this pattern persists across the entire NAND array, the drive is considered to be sequentially preconditioned. When an SSD is then sequentially refilled, continuous sections of the NAND media become invalidated at once. Figure 4 shows that because of sequential precondi- tioning, the data is arranged continuously across the NAND media. When subjected to a sequential work- load, the data will therefore be invalidated (replaced with new data on the same logical block address [LBA]) in a continuous pattern. When this occurs, garbage collection is not needed to relocate data because continuous lines of old data already exist and can be erased without incurring a performance drop or addi- tional write amplification. Therefore, adding over-provi- sioning does not improve sequential write performance. Case 2: Random Preconditioning When a drive has been preconditioned with a random workload, the valid data is randomly scattered across the NAND media (as shown in Figure 2). Then, when the drive is subjected to a sequential workload, it produces a random pattern of invalid data as new sequential data replaces old random data. Because the invalid data is randomly distributed, garbage collec- tion must relocate valid data, which means added over-provisioning would increase performance. After a continuous sequential workload is applied for a sufficient period of time, however, the drive will return to a sequentially preconditioned state, as in case 1. (The period of time this takes varies depending on the drive.) Sequential performance with sequential precondi- tioning (case 1) is always higher than sequential perfor- mance with random preconditioning (case 2). The level of over-provisioning on the drive only changes how much degradation occurs, as in case 2. Sequentially Filled and Refilled (7% OP) Valid Data Invalid Data Data to be moved Valid data to move: 0 Sequentially Filled and Refilled (25% OP) Valid data to move: 0
  • 5. 5 Differences in Personal vs. Enterprise SSD Performance micron.com Products are warranted only to meet Micron’s production data sheet specifications. Products and specifications are subject to change without notice. ©2013 Micron Technology, Inc. Micron and the Micron logo are trademarks of Micron Technology, Inc. All other trademarks are the property of their respective owners. All rights reserved. 12/13 EN.L P:11446 Write Buffering and Steady State Performance Traditionally, write buffering has been used to increase instantaneous, or burst, I/O performance and has not been regarded as a factor in sustained performance. For SSDs, the assumption that a volatile write buffer has no effect on sustained performance is not necessarily true, because parallelism is critical for SSD performance. One method for increasing parallelism is a process known as write accumulation, where several smaller WRITE operations are combined into a larger WRITE operation across multiple physical NAND die. This process optimizes WRITE operations and produces the greatest amount of data written with the least amount of media busy time. To take advantage of write accu- mulation, the drive must have some form of write buffer in which to accumulate WRITE commands. Some Micron enterprise SSDs have enough energy storage capability to protect all data in a write accu- mulation buffer from data loss during a power-loss event. This enables the drive to safely accumulate WRITE commands, even when the volatile write buffer has been disabled. Micron personal storage SSDs, however, typically do not have this capability. In a conventional personal storage application such as personal computing, this difference is inconse- quential because personal storage applications nearly always operate with the volatile write cache enabled. However, in applications where the volatile write cache is disabled, these personal storage drives could experience reduced performance. Summary Many factors affect how well an SSD performs in a particular application. The way an application accesses the SSD can have a significant impact on SSD perfor- mance, endurance, and reliability. It is important for system designers to understand some of the key differences between personal storage and enterprise SSDs, as outlined in this technical marketing brief, to ensure an optimal fit for their usage model.