From my personal perspective I prefer following:
- VMware backup restore - easy and quick way. You can easilly setup periodic backup as well. At least I never faced issue with this one. Backup could run on background.
- Gaia snapshot - again easy to restore on specially on same device. Problem what I see here is the snapshot is usually quite big and when you want to get it out from device, you must export it. Here I can see obstacle with automatic scheduled snapshoting and copying out from the device. Snapshot could be still taken on background. I prefer it more as mandatory step before updates/other bigger configuration changes.
- Migrate export - I like this for migrations rather then for backuping. You can use it, but when youwant to take it, you must disconnect all clients or stop services.
There is one missing option - scheduled-backup. It is designed for everyday backup job, running on background and you can copy out files by it easilly.
I think the best way is to use option VMware backup and scheduled-backup together, so you have two available options for restore.