Hi,
I'm new to TrueNas and zfs and I'm trying to wrap my head around SLOG as well as whether I need one. Based on the reading I've done my understanding is that a SLOG is not a write cache but instead holds the ZIL which is normally stored on the array until it can be flushed to disk in a batch. Adding a SLOG device benefits synchronous writes by alleviating the otherwise duplicate work the main disks would have to do. This can increase the performance of the pool when using synchronous writes but provides no benefits to asynchronous writes.
I'm currently using TrueNas Scale virtualized with Proxmox. My pool consists of 6x4TB hdds in 3xmirrors. I plan on using this pool for a mixed workload that includes VMs which I understand should be synchronous to mitigate data loss. With this in mind I decided to test my pool using FIO and found that when I forced sync enabled I was only getting around 7-8MB/s sequential writes which wasn't going to cut it. I added a virtual disk as a temporary SLOG device which brought my sequential synchronous writes up to 50MB/s. Unless my tests are inaccurate for this use or I have a a miss understanding of what a SLOG is or isn't, it seems like purchasing a SLOG device would be of use here. Is this correct?
Thanks
I'm new to TrueNas and zfs and I'm trying to wrap my head around SLOG as well as whether I need one. Based on the reading I've done my understanding is that a SLOG is not a write cache but instead holds the ZIL which is normally stored on the array until it can be flushed to disk in a batch. Adding a SLOG device benefits synchronous writes by alleviating the otherwise duplicate work the main disks would have to do. This can increase the performance of the pool when using synchronous writes but provides no benefits to asynchronous writes.
I'm currently using TrueNas Scale virtualized with Proxmox. My pool consists of 6x4TB hdds in 3xmirrors. I plan on using this pool for a mixed workload that includes VMs which I understand should be synchronous to mitigate data loss. With this in mind I decided to test my pool using FIO and found that when I forced sync enabled I was only getting around 7-8MB/s sequential writes which wasn't going to cut it. I added a virtual disk as a temporary SLOG device which brought my sequential synchronous writes up to 50MB/s. Unless my tests are inaccurate for this use or I have a a miss understanding of what a SLOG is or isn't, it seems like purchasing a SLOG device would be of use here. Is this correct?
Thanks