Deleting old backup snapshots with Cloud Continuous Backup


We would like to optimize our MongoDB Atlas usage in order to save money. With the recent changes made by MongoDB Atlas to the Cluster Backup Storage offer, we are currently studying the different backup strategies and policies.

We would like to delete snapshots that were taken in March or prior that we will never use to recover the Cluster anyway and see the effects it has on our costs.

The problem is that everywhere in the documentation for the Cloud Continuous Backup, it is written that the snapshots are taken incrementally. Maybe we misunderstood the “incrementally”, but our understanding is that if there are 3 snapshots taken (A, B and C in this order), than B represents the changes that have been made on top of A and C represents the changes that have been made on top of B. But in this case, does this mean deleting snapshot B will corrupt or make snapshot C useless?

  • Did we misunderstand the meaning of “incremental”?
  • If not, does deleting our old snapshots make the new ones incomplete?

Thank you for your help!

Hi @Arthur_Le_Saint, which cloud provider are you deployed on?

We are with currently with AWS.

Got it.

Atlas uses the cloud providers native cabilities of taking snapshots along with our stack to maintain consistent backups. So when we say snapshots are incremental, this is the cloud providers definition. Here is what I mean… snap1 is a full snapshot. Snap2 and so on are incremental. Meaning you are only charged for the blocks that have changed. However how this really works under the covers is by reference blocks, not by a true incremental copy as defined by legacy backup technologies.

Back to the example, snap1 is full and snap2 and 3 are incremental. You would like to delete snap2. This does not corrupt snap3. What the cloud provider does and figures out which blocks are still referenced by future snapshots, and those references are carried forward. And only the blocks that are no longer referenced in future snapshots are actually deleted.

What this means is deleting snapshots doesn’t give you the cost savings you might think. This is very workload dependent.

If you would like, send me a direct message and would be more than happy to take a deeper look at your atlas organization.

1 Like

Hi @bencefalo,
Thanks a lot for your quick and very informative answer! We have now a much better idea of what “incremental” meant in the docs.
We will run some tests this week and delete some backups to see the impact it has on our billing.
If the tests don’t pan out or if we have more questions, we won’t hesitate to send you a DM to look at the problem more thoroughly.

1 Like

This topic was automatically closed 5 days after the last reply. New replies are no longer allowed.