Horizontal scaling (v3.16.0.6)

No problem. You can scale your writes by adding drives to the node (vertically), or by adding nodes with the same number of drives (horizontally). There’s also the impact of partitioning.

To be super clear, there’s a write queue per-device, and in Linux a device is a partition, not a drive. To mitigate temporary peaks the streaming write buffers go into the write queue, whose size is controlled by max-write-cache. Partitioning the drive and assigning those devices gives you more of that cache if you wish, and also more write threads associated with the extra write queues. This doesn’t change the characteristics of the drive - partitioning doesn’t add IOPS, but it can have an impact on smoothing out write spikes.

You don’t really want to see the write-q value increasing in your logs - it’s a sign the drives aren’t keeping up sometimes, so a consideration for capacity planning and scaling. Each device has its own line:

{namespace} /dev/sda: used-bytes 296160983424 free-wblocks 885103 write-q 0
write (12659541,43.3) defrag-q 0 defrag-read (11936852,39.1)
defrag-write (3586533,10.2) shadow-write-q 0 tomb-raider-read (13758,598.0)