I am not a storage noob but clearly I am missing something.

In a standard raid as I understand it, IOPS is calculated based on the number of spindles in the array (most cases per disk).

Ex: in the calculation of full SAS disks aprox 200 IOPS at 10 to 15k Enterprise disks. However the numerical value isnt important here but in the understanding of how this changes in a raidz and draid.

The documentation for zraid/draid suggests that the IOPS doesnt change but the amount of bandwidth per IOP does! I dont understand how this is? Perhaps if it was calculated based on the HBA aka 200 IOPS for the HBA but each disk added additional bandwidth or amount of data that can be accessed (read and write)

In my specific scenario I want a balance of performance vs parity(data protection)

I initially configured a raidz2 (2 disk parity) with 0 hot spares. I read that draid was available shortly after and configured a draid2 the following:

I used data devs 2 and 1 spare (600gb 12GB SAS disks). I understand the spare actually gets used and the blocks equivalent to 1 drive are actually removed across all disks.

This equates to: draid2:2d:14c:1s-0

https://openzfs.github.io/openzfs-docs/Basic Concepts/dRAID Howto.html

Based on the above link it should be 2 groups, but its specifically this that I'm having a hard time picturing or understanding what it defines:

data - The number of data devices per redundancy group. In general a smaller value of D will increase IOPS, improve the compression ratio, and speed up resilvering at the expense of total usable capacity. Defaults to 8, unless N-P-S is less than 8.

Does this mean I split my 14 disks into 2 groups of 7, or that I split my 14 disks into 7 groups of 2? How do I calculate the IOPS and how am I losing space at an even greater value based on the lower D value? My usable space calculation shows 1 spare removed but doesnt show parity space calculations removed in total available space. Also what does N-P-S mean or stand for... my guess? (N number of disks, minus parity, minus spare?)

ex: 14 600GB disks = 8.4TB aprox with 2 parity and 1 spare. I understand the parity calculation doesnt show as removed apparently and it should, but it does show that 1 disk equivalent of space for the spare was removed aka its showing 7.8TB usable.

Regarding the IOPS if it was 7 groups of 2 then based on their explanation that would be 7 x 200 IOPS. In a standard raid that would be 13 x 200 IOPS (14 disks with 1 hot spare)

Which is true?