ZFS Best Practices
17 hours ago, ignorantForager said:
One option I'm considering is to create a 5-Wide Z2 setup, where each VDEV consists of 5 drives in a Z2 RAID configuration.
5 disks in dual parity is hugely inefficient in usable capacity and performance, definitely would not do that.
QuoteNo other operation can take place on that vdev until all the disks have finished reading from or writing to those sectors. Thus, IOPS on a RAIDZ vdev will be that of a single disk. While the number of IOPS is limited, the streaming speeds (both read and write) will scale with the number of data disks. Each disk needs to be synchronized in its operations, but each disk is still reading/writing unique data and will thus add to the streaming speeds, minus the parity level as reading/writing this data doesn’t add anything new to the data stream.
Only using 5 disks in a RAIDZ2 is going to limit seq throughput to 3 disks per vdev and also mean best case theoretical seq throughput of 9 disks meaning you are wasting 6 disks worth of capacity and performance to gain only 3x IOPs over a single vdev. If you want IOPs then mirror vdevs is the way to go for that, you'd get 7x or 8x (16 disks) IOPs that way.
Quote1x 12-wide Z3:
• Read IOPS: 250
• Write IOPS: 250
• Streaming read speed: 900 MB/s
• Streaming write speed: 900 MB/s
• Storage space efficiency: 75% (54 TB)• Fault tolerance: 3
Quote2x 6-wide Z2:
• Read IOPS: 500
• Write IOPS: 500
• Streaming read speed: 800 MB/s
• Streaming write speed: 800 MB/s
• Storage space efficiency: 66.7% (48 TB)
• Fault tolerance: 2 per vdev, 4 total
If you can't use 16 disks total or not easily then go for 14 disks in 2x RAIDZ2. You'll get a better ratio of performance and capacity with a small reduction in IOPs that likely won't be noticed due to caching.
Below would be what you are proposing
3x 5-wide Z2:
• Read IOPS: 750
• Write IOPS: 750
• Streaming read speed: 900 MB/s
• Streaming write speed: 900 MB/s
• Storage space efficiency: 60%
• Fault tolerance: 2 per vdev, 6 total
Using Mirror vdevs instead
7x 2-wide mirror or 8x 2-wide mirror:
• Read IOPS: 1750 / 2000
• Write IOPS: 1750 / 2000
• Streaming read speed: 700 / 800 MB/s
• Streaming write speed: 700 / 800 MB/s
• Storage space efficiency: 50%
• Fault tolerance: 7 / 8
And my suggestion
2x 7-wide Z2 or 2x 8-wide Z2:
• Read IOPS: 500
• Write IOPS: 500
• Streaming read speed: 1000 / 1200 MB/s
• Streaming write speed: 1000 / 1200 MB/s
• Storage space efficiency: 71.4% / 75%
• Fault tolerance: 2 per vdev, 4 total
And @Electronics Wizardy's
1x 15-wide Z2:
• Read IOPS: 250
• Write IOPS: 250
• Streaming read speed: 1300 MB/s
• Streaming write speed: 1300 MB/s
• Storage space efficiency: 86.67%
• Fault tolerance: 2 total
If you are going to throw away that much to parity you may as well just go mirror vdevs, minor reduction in throughput for huge gain in IOPs with similar usable capacity.
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now