TrueNAS Core cache

I have an existing storage array that I pieced together from equipment that was replaced with newer stuff. The controller is an R710 that used to be a VMware host so it has a lot of RAM. (288GB) It has four NetApp enclosures and a Dell SC220 connected to a pair of quad-port external SAS cards. The network connection is 4 10GB links in LACP. There are two pools configured to date, the first being an eight vdev (eight drives each, spinning 500GB) pool and the second a two vdev (four drives each, SSD 800GB)
Everything is connected via multipathing (active, active)
I am very happy with how it all runs, it’s is primarily an iSCSI target for a VMWare cluster. I haven’t speed-tested it but everything seems snappy enough.
All that to say, I have 12 200GB SSDs that I wanted to use in whatever way that would speed up the spinning disk pool best. I did just recently upgrade from 11.3-U5 to 12.0-U8 in order to be able to try the special allocation class.
So, what is the best practice for caching with SAS SSDs? Cache, Log, Metadata, or a combination.

Lawrence Systems just released a video that may help. I’m just starting to watch:


The “ZFS is a COW” video which he did before that is pretty good also. Not really related to caching, but a good overview of the basics.


That guy is sharp but I’m not as worried about the cache or log vdevs I feel like those are easy enough to experiment with because it’s trivial to build and destroy them without harming the pool. My concern is with the metadata pool as it’s basically permanent. Maybe he’ll do a part 2.