VOSS-4-UC 19.2.1 - Backup and Restore Improvements
Nyasha Chigwamba, Technical Lead, VOSS
As our service provider customers continued to onboard customers across the globe, it became apparent that our MongoDB backup and restore strategy needed a revamp in order to adapt to the growing scale and geographically dispersed customer base. In large deployments, the backup procedure typically took a few hours and had to be carefully scheduled to run daily, outside business hours. For service providers with customers across the globe, time zone differences added to the complexity of determining a suitable time outside business hours.
I’m pleased to say that the VOSS-4-UC 19.2.1 release significantly improves the backup and restore performance.
For releases older than VOSS-4-UC 19.2.1 database backup is done by copying data into files (mongodump) that can be subsequently imported into the database (mongorestore) during the restore process. Although this approach to backup and restore is simple and efficient for small databases, MongoDB does not recommend it for larger databases. The key shortcomings of this approach are negative database performance impact and the lengthy backup duration for larger databases.
VOSS-4-UC 19.2.1 reworks the backup and restore implementation to make use of snapshots of the database file system. This snapshot capability is a function of the underlying Linux operating system and is enabled by Logical Volume Manager (LVM). By switching to file system snapshots, the snapshot creation process literally takes seconds as opposed to minutes or hours; regardless of the size of the database. The database is only locked for a few seconds to prevent writes while a snapshot is being created, thus guaranteeing snapshot data consistency with no operational impact on the database. The bottleneck then shifts to the speed of file transmission of the snapshot archive across the network from the VOSS-4-UC platform to a remote secure server for safekeeping. For partners upgrading from earlier releases of VOSS-4-UC to VOSS-4-UC 19.2.1, there is an additional database drive conversion process that configures LVM. Thereafter, all pre-existing backup schedules will continue to function without any further configuration.
Performance test results from a controlled lab environment showed a performance boost of up to 80% on the duration of backup/restore. To put this performance boost into perspective, a backup that used to take 3 hours and 45 minutes in a test deployment, now takes 45 minutes. It should be noted that performance results are dependent on a number of factors, including - but not limited to - network speed and hardware virtualisation configuration. Therefore, results may vary across deployments.
To find out more about this exciting enhancement in VOSS-4-UC 19.2.1, please get in touch.