3-4. You don’t need sync write for torrents. Regarding the recordsize, it depends on the size of the files. I would personally go with 1-4M for big files. Also, zfs (just as any CoW filesystem) is not very well suited for torrents. Although, your separate SSD pool for active downloads should help.
For an all flash pool, suppose there might be a use case where a sVDEV is useful (tiers of flash speed) but for your average SOHO application, I see little to no benefit.
SLOGs speed up sync writes (especially for HDD-based Pools) and should feature power loss protection. Hence the use of Optane, battery-backed RAM, and like solutions. For an all-flash SOHO system, the use case seems remote.
If a SLOG is indicated due to database integrity and like reasons, then you’ll have to pay some big bucks for a SLOG that can keep up with an all flash array. More likely than not, a SLOG would slow a multi-VDEV flash array down, rather than up.
In other words, unless you have a specific need for a SLOG that you can articulate, chances are that you don’t need one for a large, all-flash array.
Can’t speak to the torrenting questions because I have zero experience with same. Your pipes to the internet better be fat, symmetric to take advantage of the flash arrays.
Don’t know. I, for one, plan to use lvm with ext4 (in proxmox) for active downloads and then move them to truenas. Somewhat similar to your setup, an ssd-pool should mitigate the fragmentation issue. However, I still didn’t migrate my transmission setup from the old ext4 NAS.
Also, there are claims that with recordsize>=1M, fragmentation would be no issue. I’m interested in the topic myself and don’t have a solution.
TBH, torrents are the last thing you want sync writes for. They even have a built-in checksum for mitigating all sorts of outages and data integrity issues…
I have a similar setup implemented, a 4 NVMe pool in Raidz1, you don’t need any special setup, I have 2x qBittorrents instances running (over a 10Gbe network), and they hardly tickle the pool.
The question is where are you going to run the qBittorrent application.? One of mine is running on a Ubuntu desktop, and it uses a lot of CPU resources, whereas the other which runs in an LXC container with web access hardly uses any CPU.
I also use the same pool as my Windows MyDocs & Downloads storage, and as an iSCSI storage, and I’ve never noticed any slowdown in disk access.