https://github.com/trapexit/mergerfs/blob/master/mkdocs/docs...
I do this. One mergerfs mount with an ssd and three hdds made to look like one disk. Mergerfs is set to write to the ssd if it’s not full, and read from the ssd first.
A chron job moves out the oldest files on the ssd once per night to the hdds (via a second mergerfs mount without the ssd) if the ssd is getting full.
I have a fourth hdd that uses snap raid to protect the ssd and other hdds.
Also, https://github.com/bexem/PlexCache which moves files between disks based on their state in a Plex DB