Which SSD should I use in my Web Server


Which SSD should I use in my Web Server

Which SSD should I use in my Web Server

Posted on Dec 30, 2012 by Paul White

I am currently building a new Server for Colocation. This time around I am going to use SSD drives instead of the 15K SAS drives. Even though the 15K SAS drives have been reliable performers, the newest SSD drives simply blow them away in terms of IO. However SSD drives have a few issues you should be aware of. Wear Leveling! But before you decided that SSD drives are too much risk for your server, do the math, and ask yourself, how much writing does your server really do. Before we get into determining which SSD drive is a good fit for our server, a little background on SSD drives for the noobies.

What are SSD drives?

SSD drives use flash memory instead of a magnetic platter to store data. The down side to this is flash memory has a limited number of writes they can handle before they go bad. Flash Memory is used in lots of various devices. The most famous of these is the USB flash drive. Any tech guy usually has at least a few of these laying around. First you should be aware that all flash memory is not equal. So first I will explain the various types of flash memory.

SLC - Single Level Cell

These can store a single bit of information, however they only last for about 100,000 writes. These used to be the primary type of Flash Memory used in SSDs and especially Enterprise Level SSDs. But they are expensive in terms of how much space they take and how much data they store. Which is why most of the industry has migrated to MLC.

MLC - Multi Level Cell

These can store 2 bits of information, and last for about 3,000 - 5,000 writes. These are the most widely used type of Flash Memory in SSDs ( as of today ).

TLC - Triple level Cell

These can store 3 bits of information, and last for about 1,000 writes. These are the latest type of Flash Memory which will allow for even higher capacity SSDs to be manufactured. These are also used in devices in which will have a limited number of writes ( USB drives, Memory cards )

What is wear leveling?

Since data is constantly being written and deleted from drives, its important that all cells get an even number of writes. You don't want 1 group of cells to be hammered with writes causing them to go bad prematurely. SSD Controllers have complex algorithms to ensure that the writes are spread evenly throughout the drive. They even usually contain some spare flash cells as a reserve. So if you buy a 120 GB Flash drive, it might actually contain 160 GB with 40 GB designed as a buffer. SSD drives also will move data around the drive to ensure that 1 group of Blocks does have data camping out on it for extended periods of time. This helps to ensure all blocks are getting written to evenly. The algorithms used by each manufacturer is different, though they all have the same goal in mind. Sometimes there will be firmware updates for SSD drives that will improve the reliability and performance of the drive.

So how long will an SSD last in my server?

This depends on what your server does. If you have a heavy database server that is setup for transactional logging, then you might wear out your SSD sooner than later. But if you are mostly reading data, then they can last for many years if not decades. What you need to determine is how much data is written to an SSD within a 24 hour period. For example I calculated my server writes about 10 GB per day ( That is a high estimate ). With perfect wear leveling writing on a 500 GB SSD drive this means I will write my entire drive within 50 days. That times 1000 writes per cell is 50000 days or 136 Years. This means I could easily get away with putting Samsung 840 SSD drives into my server without worrying about wearing out my drives prematurely. The only point at which I would worry about wearing out my drive is if I was doing 1 TB of writes per day. At that point I would wear out my drive in about 1.3 Years. If this is you then you might want to use Samsung 840 Pros, which are supposed to last 3000 writes per cell, or even get their pricey enterprise models.

Speed vs IO

Read speed, write speed and IO are very different. Read and Write speed is how fast a drive can read or write a single file to the drive. This is useful when doing operations like Video Editing, or migrating large files, but if you are running a web server, your operations do not reflect a drag race with Gigabyte sized files. They are made up of thousands of small read and writes. The ability to read one small file then read another small file in quick succession is how IO is measured.

With traditional harddrives you increased speed and IO by spinning the disc faster, limiting the travel of your heads, and running maintainence on your drives ( defrag ), to ensure your heads don't have to move around to grab various fragments of a file. Since hard drives are a mechanical device, they suffer from latency. This latency can vary from 4ms, to 16ms+ depending on the speed and type of drive. So when you ask the hard drive to retrieve a file, it has to read the location of the file from its Tables, then move the arm with the head into position to read the file. This latency is ultimately responsible for the poor IO suffered by hard drives.

SSD IO is measured by how fast it can process 4KB files. The latest generation of SSD drives can push 100,000 IO / second. This means they can read 100,000 4K sized files in 1 second. Compare this to a SAS hard drive which might have been capable of 400 IO and you see the difference. Even though SSDs are both good at High Speed Reads and Writes. Their real power is in their IO.

Which brand of SSD should I use.

There are many brand out there. I have only tried a few and had great experiences. If you read online you might find people trashing various brands and models of SSD. If you want to go with the SSD drives with the least amount of consumers bitching, and best track record you want to go with Samsung SSD drives. They might cost a little more, but they are reliable.

Why Samsung SSD drives?

Unlike most other manufacturers Samsung is not dependent on third party vendors for its components. Samsung makes their own Flash Memory, and Memory controllers. So when you buy a Samsung SSD, everything under the hood is made by Samsung.

What companies make Flash memory?

Flash memory is practically a commodity these days with only a few companies that manufacture the stuff.
The following are the current companies producing Flash Memory. Intel, Micron Technology, Samsung, SanDisk, SK hynix, Toshiba.

What companies make Memory Controllers?

There are roughly about a dozen companies that make Flash Memory Controllers for SSD drives. These include Fusion-io, Indilinx, Intel, JMicron, Marvell, Phison, Samsung, Sandforce, STEC, Hyperstone.

What companies make SSD drives?

Wikipedia has put together a very nice list. Its interesting to see how many companies are making SSDs. Its important to note that most companies are buying their Flash Memory and Memory Controllers from a third party and then adding their own software, and marketing. This doesn't mean other SSD drives are crap, but it does mean they have less control over their products than a company like Samsung or Intel.

Ok so I want a Samsung SSD for my server, which one do I need?

I have put together a chart comparing the current SSD drive offerings by Samsung.

Visual
Samsung 830 SSDSamsung 840 SSDSamsung 840 Pro SSDSamsung SM843 Enterprise SSD Samsung SM1625 Enterprise SSD
Model
830
840
840 Pro
SM843
SM1625
Launch Date
Aug 2011
Oct 2012
Oct 2012
Oct 2012
Oct 2012
Street Price Per GB (250)$0.66$0.64$0.89NANA
Form Factor
2.5"
2.5"
2.5"
2.5"
2.5"
Host Interface
SATA 3.0
6Gb/s
SATA 3.0
6Gb/s
SATA 3.0
6Gb/s
SATA 3.0
6Gb/s
SAS 2.0
6Gb/s
Flash Memory Type
27 nm
MLC
21 nm
TLC
21 nm
MLC
20 nm
MLC
20 nm
MLC
Capacities Available
64GB
128GB
256GB
512GB
120GB
250GB
500GB
128GB
256GB
512GB
120GB
240GB
480GB
100GB
200GB
400GB
800GB
Power Active
0.12W
0.071W
0.069W
3.4W
9W
Power Idle
0.08W
0.046W
0.054W
0.3W
4W
Write Endurance
60 TB
275 TB
272 TB
1 PB
10 PB
Cache power protection
NoneNoneNoneNone
Super
Capacitors
Sequential Read Speed
520 MB/s
540 MB/s
540 MB/s
520 MB/s
900 MB/s
Sequential Write Speed
400 MB/s
250 MB/s
520 MB/s
410 MB/s
740 MB/s
Random IOPs Read
80,000
96,000
100,000
70,000
101,500
Random IOPs Write
36,000
62,000
90,000
11,500
23,500

Enterprise vs Consumer SSDs

You would think that since you are installing this drive into a server that you would need an enterprise grade SSD. But that is not the case. Pricing for the Enterprise grade offerings from Samsung were not available at the time of this writing, and I suspect they are only available via Quote from a known business customer. However you can be assured they are much higher than the 840 Pros. What do you get with Enterprise grade? You basically get much higher write endurance, and with the SM1625 you get to take advantage of Dual port SAS, and Super Capacitors. Dual port SAS allow 2 SAS ports to connect to the device at once, so that in case 1 port fails the drive can continue to operate off the good port. The Super Capacitors store enough juice so that if the server were to suddenly loose power the drive can finish writing the data that was in its buffer, else this data could be lost. If you run a hot server, with all drives pushed to the max 24/7 these super capacitors could save the day. If you are running an average server you can probably live without Super Capacitors, even though they don't hurt.

What am I going to go with?

The Cost savings of the regular Samsung 840 are appealing to me. As of right now I am leaning towards those.


Permalink
1690 Visitors
3246 Views

Categories associated with Which SSD should I use in my Web Server

Discussion

No Comments have been submitted
name
Email Needed to confirm comment, but not made public.
Website
 
Type Code
Security Check
 
When you Post your Comment, you'll be sent a confirmation link. Once you click this link your thoughts will be made public.. Posts that are considered spam will be deleted, Please keep your thoughts and links relavent to this Article