Hello
I have task to create a read only replica of Azure Cosmos DB for MongoDB. We currently have a Azure Cosmos DB for MongoDB setup in two regions with Multi-region writes enabled. We have application services in each region pointing to this with no Preferred Region in connection string. We are looking to create read-only replica that will be used for analytics and reporting purpose. Since multi-region writes is enabled we cannot have read-only copy.
From what I have seen I see below potential solution
- Create a third writable region. Update connection string such that
- we can application to respective specific region using Preferred Region in connection string
- Analytics or Reporting solution points to the new third region using Preferred Region in connection Theoretically above solution should work, but I am concerned that we may have have potential performance issue when one of the first two regions fails and cosmos DB start processing application request in the region dedicated for Analytics or reporting. Since it multi-region there is no concept of failover so we cannot set failover priority.
- Create a new Azure Cosmos DB for MongoDB dedicated for analytics and reporting
- Perform one time migration using may be using one of the below option
- Point In Time Restore (PiTR) option
- Azure Data Factory
- Azure Cosmos DB Desktop Data Migration Tool (I am not sure if this supports Cosmos DB for MongoDB)
- Ongoing data synch using one of the below option
- Change feed
- Azure Data Factory (I am not sure if Copy data supports delta copy in Cosmos DB for MongoDB)
I looked at several document but it was not clear if those options are supported in case of Cosmos DB for MongoDB.
It would be helpful if this community can share some suggestions and recommendations on this.
Thank you