Frequently asked questions about continuous backup point-in-time restore in same account

APPLIES TO: NoSQL MongoDB Gremlin Table

The same account restore capability of continuous backup in Azure Cosmos DB allows you to restore the deleted databases or containers within the same account. You can perform this restore operation via the Azure portal, Azure CLI, or Azure PowerShell. This feature helps in recovering the data from accidental deletions of databases or containers.

Can I read or update other resources while a restore is in progress?

Yes, you can read or update other databases or containers while a restore operation is in progress on previously deleted resources. Deleted containers and databases aren't available for those same operations in that same time period.

How many same account restore actions can be done on an account?

More than three resources in an account can not be restored in parallel.

What is the granularity of resources which I'm able to restore into the same account?

You can restore deleted containers, databases into the same account. The only exception is that shared-throughput containers can't be restored individually. An entire shared-throughput database must be restored entirely.

Can I restore a particular container or database to a different restore timestamp multiple times?

Yes. You can trigger a restore operation multiple times into the same account as long as they don't have a database or container with the same name.

Can I figure out the delete operations or timestamp on a particular container to figure out the correct timestamp to restore?

Yes, APIs to list the event feed of databases or containers. Based on this feed, you can find the event timestamp and operation type you need to configure your restore operation. You can then determine the correct restore timestamp to use for your scenario.

How am I billed for restore?

You're only billed for the amount of data restored. Once restore is complete, a billing event is triggered for restored containers or databases.

What is the expected time for restore to finish?

Restore time is a function of the data size, the amount of log backup that needs to be replayed, and the number of partitions that need to be restored. Restoring 1 TB of data typically takes 30-90 minutes. For an account with multiple regions, the timing to restore into the same account could vary and more than usual restore into new account capability.

Are deleted containers and databases restored in all regions?

Yes. Deleted databases or containers are restored in all regions where the account is present when restoring into the same account. Restored resources are present in only one region, which is usually the write region, when restoring into a new account.

What are all the ways in which I can trigger a restore operation?

You can trigger restore operations from the Azure CLI, Azure PowerShell, or the Azure Portal.

No. Currently, continuous backup mode and Azure Synapse Link can't coexist in the same Azure Cosmos DB account.

Can I restore databases or containers to different restore timestamps?

You can choose to restore databases or containers to different restore timestamps. It's always recommended that you chose the same restore timestamp for restore operations on both databases and their child containers. If you choose to restore to different timestamps, you may run into issues where you can't read some data encrypted using DEK. This error occurs when the container is restored to a more recent timepoint than the database.

Can I continue using the same client connections to access data after restore is successful?

You're required to refresh locally stored session tokens and continuations tokens before performing reads and writes on the restored resources. Also, you're recommended to restart your SDK clients to refresh session tokens and continuations tokens stored in SDK cache. This restart prevents reads and writes issues on restored resources that can occur due to stale session and continuation tokens.

Can I create a container under a shared-throughput database while the database is being restored?

No, you can't create a new container under a shared-throughput database while it's being restored. You can perform this operation after the restore operation finishes.