I had some more time to do testing with the Fusion IO card over the last week. Once again it’s proven it’s much more than just a standard SSD drive. It gains the benefits of SSD by having no moving parts and being all memory based. The big difference between the card and SSD drives is that this is plugged directly into the /motherboard using your PCI-E slot. This gives it a much faster transfer rate through the PCI-E slot than through the Sata controller like a standard SSD drive.
I used Brent O’s (Blog|Twitter) Article and script on SQL Server Pedia to get the IO numbers for the drive (Listed here). If you run the script from Sql Server Pedia then you can download my data that I’ve placed on Google docs. Paste it into the raw data section and you can view it in the pivot table to directly compare to my results. I have only included IO’s per/sec, but all the counters are available in the excel file. Here is the file on Google Docs.
The Fusion IO Drive is a 160GB drive. The card I tested retails at $6995
The san drives I tested against were 7 7200 RPM SATA drives in a 5+2 RAID 6 (7 total drives). Connected via 4GB Fiber channel
So where can you use this effectively in your environment? If you’re a medium sized company and you have some Large Db’s (200-300GB) then placing the whole DB on this drive is not really a cost effective option. But here’s some options I’ve found success with.
1. Place your Tempdb on the Drive.
a. By placing Tempdb on the drive I got a boost on basically all SQL Server activity since many of the day to day operations of SQL Server find their way into Tempdb. I’ll have a blog post in the future with some more specific numbers around this.
2. Place your Indexes on the Drive.
a. Given the extreme write and read performance of these cards if you place indexes on the drive you can also see a boost in performance. This does require a pretty big change since you have to drop and re-create your indexes into a new filegroup.
3. Use the card as a way to remove disk latency for testing
a. I have a project right now that needs very very fast disk access. I need to simulate a system that can do thousands of inserts a second in SQL Server. So Instead of trying to find a Raid 10 array on my san and getting it configured I can use this card to do this sort of testing right on my own box. It’s allowing me to find the fastest way to get data into my system without worrying about disk performance.
So here’s a list of some of the Pro’s and Con’s of the drives in general.
Blazing fast speed
Easy to install and setup
These cards will degrade over time. Here’s a explanation as to why offered by Fusion IO.
Doesn’t NAND flash have a write limit? How does that effect the lifetime of the ioDrive™?
NAND flash has a limit on the number of writes that can be done to an individual cell. The particular limit depends on the type of flash used. For Single Level Cell (SLC) NAND, the limit exceeds 1,000,000 writes to a cell, whereas for Multi Level Cell (MLC) NAND, it is on the order of 10,000 writes. Hence, in order to exceed the limit of a single 80G ioDrive™, you would have to write almost 80PB (Petabytes) of data. Streaming data at 800GB/s to the card, it would take you 3.4 years of writing data non-stop to exceed the SLC limit.
Hopefully you can use the information I provided in the spreadsheet to determine your own ROI and whether the card is right for you. Personally I have some more tests to run and will continue to post information on my write project that I’m working on with the Fusion Card as my testing platform.