• For backups I had similar, also things like CHECKDB, read the thread I posted, may have some answers for maintenance and backup:  https://www.sqlservercentral.com/Forums/1921328/Extremely-Large-Backup-Solutions 

    Basically striped backups across multiple disks are faster, I got the time down to less than half, and any VM performance settings you can change, restoring from striped is slightly more tricky but I worked out a routine which queries msdb to get the last backup paths to a restore script.  I used the Ola Hallegren script for backups and you just add multiple paths in, see here where I got it wrong: https://www.sqlservercentral.com/Forums/1922540/Ola-Hallengren-Striped-Backup-Job 

    Did you come up with any solutions for the actual database itself?

    Forgot to mention above that my DBs are also document stores, so compression on the backups I was only getting down to about 70% of the original data.