Addressing slow transfer speeds for Storage Spaces
-
Thursday, January 10, 2013 6:54 AM
Storage Spaces with parity-based drives are now widely recognized to be intolerably slow. With SSDs I get perhaps 15MB/s writes on a 4-disk setup.
#1 Have there been any announced plans to fix this feature has is basically DOA?
#2 Is anyone using parity-based disks with Storage Spaces? What is your experience besides the slow transfer speed?
All Replies
-
Thursday, January 10, 2013 2:49 PM
RAID5 (parity) is not reliable with modern high capacity media. And also it's a write pig. RAID10 is a way to go with both performance and reliability in mind.Storage Spaces with parity-based drives are now widely recognized to be intolerably slow. With SSDs I get perhaps 15MB/s writes on a 4-disk setup.
#1 Have there been any announced plans to fix this feature has is basically DOA?
#2 Is anyone using parity-based disks with Storage Spaces? What is your experience besides the slow transfer speed?
-
Friday, January 11, 2013 5:31 AM
While I appreciate the perspective, it is not an answer to what I asked.
It sounds like, compared to you, I have smaller disks and fewer of them. Single-parity will work fine for me, which is why I am asking.
-
Friday, January 11, 2013 8:05 AM
While I appreciate the perspective, it is not an answer to what I asked.
It sounds like, compared to you, I have smaller disks and fewer of them. Single-parity will work fine for me, which is why I am asking.
1) No, it cannot be fixed by design as it has 4 I/Os penalty for incomplete stripe update:
http://rickardnobel.se/raid-5-write-penalty/
So either your optimize your workload for RAID5 (use something doing fill stripe writes mostly) or you have to use different RAID level (or different file system implementing log-structuring or use clustered configs with huge write-back caches adsorbing shocks of a small writes - helps for data but not for metadata updates).
2) We actually use it in production. But our workload is 100% match for RAID5 (video surveillance).
-
Friday, January 11, 2013 3:12 PM
You seem to be saying that the poor performance is all that can be expected out of Storage Spaces and parity based disks based on a simple setup?
How would you explain my getting 300MB/s out of the exact same disks when running single-parity ZFS compared to 10MB/s out of Storage Spaces? Similar principles.
- Edited by qemo Friday, January 11, 2013 3:13 PM
-
Friday, January 11, 2013 9:15 PM
You seem to be saying that the poor performance is all that can be expected out of Storage Spaces and parity based disks based on a simple setup?
How would you explain my getting 300MB/s out of the exact same disks when running single-parity ZFS compared to 10MB/s out of Storage Spaces? Similar principles.
You're comparing apples to oranges :) ZFS is a monolithic file system while SS are basically a different name for a stand-alone LVM having no clue about what file system is layered on top of it. ZFS has numerous write optimization techniques including clustering (keeping physically different writes close to each other) and logging (something NTFS also does but not for metadata and not so extensively). So ZFS will virtually never write with a small blocks @ the time SS will. If you'd enable dedicated disks for journalling - you'll have some performance increase. See other guys with similar issues and their solutions to them:
-
Sunday, January 13, 2013 6:27 PM
If ZFS is different because it has a filesystem and SS is filesystem agnostic, then would Linux's MDADM/LVM combination be a closer match? Because I also get anywhere from 100-300 MB/s out of RAID-5 MDADM/LVM from the same disks.
-
Sunday, January 13, 2013 9:34 PM
How do you get all of these numbers? Synthetic test or... ?If ZFS is different because it has a filesystem and SS is filesystem agnostic, then would Linux's MDADM/LVM combination be a closer match? Because I also get anywhere from 100-300 MB/s out of RAID-5 MDADM/LVM from the same disks.
-
Tuesday, January 15, 2013 3:19 PM
I get these numbers by copying the contents of my data around, about 100MB to 500MB files. Which is the typical use case on my machine: transfers of data files.
I am not trying to be difficult. But Storage Spaces disappoints because while the disks are each 100MB/s and processor is Core i7, I get 10MB/s where as I should be max'ing out the disks. It's rather pathetic. You cannot argue that processing slows it down, because the CPU is not being taxed. So what gives? The only other reason is poor design.
Have you even tried other solutions? How do you not know there numbers from competing solutions if you are advocating SS? My experience with Solaris and Linux spans 20 years which is why I know what MDADM/LVM and more recently ZFS are capable of.

