iSCSI Target Performance: DataCore – expensive but worth it.
May 19, 2010 2 Comments
Carrying on from the post yesterday regarding the software iSCSI SAN I was building I thought I would post a few performance figures for the vendors I tried.
In the past I have used a Product called “SanMelody Lite” from Datacore. Their full SanMelody product has been proven in many large scale environments and the “Lite” version was essentially a starter pack costing $199, limited to 2 targets, 2TB of storage and none of the enterprise features such as thin provisioning, snapshots, etc – which was very reasonable for the cost.
Sadly when I tried to purchase a new licence last week I discovered they had discontinued it and in its place is a package costing $950, limited to 3TB and containing features that while useful are frankly unneeded for my deployment. I phoned Datacore to see why Lite was discontinued and was told they didn’t sell enough, make of that what you will I suppose…
Anyway, with that gone I decided to check the latest offerings from other Vendors. The two main ones I looked into were:
Each has their own advantages/disadvantages, Openfiler is open-source, free and contains some nice enterprise features by default including HA, snapshots and thin provisioning. StarWind has limitations on the number of concurrent connections on their base packages and if you want more then a couple of servers to use the target then you are immediately looking at the $1000 mark just like Datacore. Both Datacore and Starwind come with 1 year of support, if you want support for Openfiler then that is possible but isn’t free and will cost around $300 for a couple of hours support time to be used as you need it.
In an effort to keep costs down I originally decided to test Openfiler first, I installed it in a VM to do some functional testing and all seemed acceptable. However once I installed on actual hardware and did some performance testing I began to realise it probably wasn’t quite up to what I needed., the performance figures were approx 50% what my old Datacore servers were getting.
At first I thought it was a configuration error so I spent time investigating, rebuilding the server, changing the write-through/write-back settings and trying to resolve it but couldn’t make it any better.
For background on the performance testing:
- Host: Dell Precision 390 (1.8Ghz, 2GB)
- OS Disks: 2x 250GB (RAID1)
- Data Disks: 3x 1TB (RAID5)
- iSCSI Network: 1000MB Wired LAN
- I did two passes on each vendor to make sure the figures were accurate and not spiked.
- Two types of tests were completed. The first for a 100MB file and the second for a 1000MB file.
- For Datacore and Openfiler I actually built the system, tested it then rebuilt the system from scratch and tested it again just to be sure the differences were not an OS anomaly.
- All disk setups were as they are expected to be used (Raid5) and tested over an un-contended 1GB LAN.
The results of testing are as follows:
As you can see, the DataCore solution is clearly the best at what it does. The write speeds are fairly consistent across the board, but the difference in read speeds is quite incredible considering the same hardware setup for all three. I plan on doing some more in depth testing in the future, but in the meantime I think these results are very interesting. Its the age old “you pay for what you get” argument. If you don’t need the performance and just need a functional solution for lab testing then Openfiler should be fine, but based on this testing I couldn’t recommend it for heavy load or production environments. Starwind is comparable to Datacore on some of the benchmarks, but given they cost essentially the same and have the same feature set, I know which vendor would get my hard earned money.
Hope that helps someone.