MongoDB is a great database that provides outstanding high availability solutions out of the box. For most Database Administrators (DBAs) we talk with, though, the awesome safety features we came to appreciate MongoDB for, like automatic failover or data redundancy, are not enough.
The thing we hear almost every time is that they still need good, reliable backups to satisfy the requirements of their business.
Unfortunately, there is a lack of free-to-use backup tools. The only freely available backup for MongoDB users without an enterprise contract with MongoDB Inc. is mongodump. While being a very reliable tool, it has some major drawbacks such as:
- not a viable solution for large production environments due to the time it takes for both backup/restore and the capabilities available;
- not a good option for sharded clusters as there’s no support for sharded transactions and users have to deal with syncing the backup/restore for all shards themselves.
That’s why Percona has developed Percona Backup for MongoDB (PBM). A fully open source tool to help with your backup needs!
While PBM allows logical backups (creating binary exports of database contents) based on mongodump, with version 2.0 the physical backups went GA!
Now physical hot backups that copy the files of your database are available to all your database clusters. Yes, that means the sharded ones as well!
With the introduction of physical backups, point-in-time recovery (PITR) has been more performant as well! This is because physical backups have been made available as the base for the PITR backups. That means that now the logical oplog slices can be administered on top of a database snapshot in the form of a physical database hot backup.
To learn more about backup and restore types supported by PBM, visit our documentation.
Introducing incremental physical backups!
For the largest MongoDB clusters, the sheer amount of data impacts the backup strategy. At scale, it’s the time to restore that matters as with the size it will be an issue.
Another factor is the size of the backups. Storing backups is one thing, but with databases deployed in the cloud, the transfer of these backups is also a factor as it can significantly impact the budget.
We’re happy to share that with PBM 2.0.3 we are introducing physical incremental backups. After a full physical backup, instead of performing full physical backups, you can create smaller incremental ones. This is how for large, write intense databases you can see significant savings in the backup strategy:
- time (performing an incremental physical backup is faster vs any other PBM backup);
- cost (based on storage and transfer cost vs. other PBM backups).
Simply put: faster and cost-effective. Also safer as with smaller and faster backups you can afford to back up more frequently and still have savings in the budget.
This is a technical preview for now, as we are looking for feedback from the Community about this feature. Please don’t be a stranger, let us know what you think!
You can learn more about using physical incremental backups with PBM in our documentation.
We do have another ongoing technical preview for selective backup/restore. Please don’t be shy and share your thoughts and comments with us!
In case you were wondering what a tech preview means for us at Percona, let me quote our lifecycle page:
*Tech Preview Features: RC/GA releases can include features that are not yet ready for enterprise use and are not included in support via SLA (supported by product/engineering on the best-effort basis). These features will be fully documented and described as a tech preview so that customers can provide feedback prior to the full release of the feature in a future GA release (or removal of the feature is deemed not useful). This functionality can change (APIs, CLIs, etc.) from tech preview to GA, however, there is no guarantee of compatibility between different tech preview versions.
When developing open source and free-to-use software, we look for your input. Please share your feedback with us and know that every voice counts!
In terms of what new is coming to Percona Backup for MongoDB, we are looking into two main topics:
- Making point-in-time recovery more appealing for large datasets.
- Selective restores supporting sharding, which is one of the main items needed for selective backup/restore.
This tool is fully supported and we are determined to deliver fixes and new features to everyone in the spirit of true open source, not only to our customers paying for premium support.
Percona Distribution for MongoDB is a freely available MongoDB database alternative, giving you a single solution that combines the best and most important enterprise components from the open source community, designed and tested to work together.