Performance of read/write operations in self-hosted MongoDB instances vs Atlas MongoDB is better

Hi,

We are migrating from one of our data store (LDAP) to MongoDB. We have built migration utility which simply reads data from existing data store and writes to MongoDB

It is observed that migration utility gets completed in 1 hour (with current data store) with Self hosted MongoDB servers (2x servers are setup in AWS) however same migration utility takes 2 hours and 10 minutes while we are using Atlas MongoDB cloud (1x primary, 2x secondary nodes)

Profiler doesn’t show any missing indexes and utility is deployed in same AWS account/ region with vpc peering with atlas mongodb cloud

We have tried with M10, M20 and M30 in Atlas cloud to eliminate IOPS issues but still it is showing almost 100% disk utilization in all above cloud configurations

We are using replica set configuration

Can you please suggest any specific performance settings required for Atlas MongoDB cloud vs self hosted?

Thanks,

Hi @Chintan_Chokshi and welcome to MongoDB community forums!!

It would be helpful for us to understand the concerns in detail if you could help me with some information for the issues foreseen:

The documentation or migration script you are following to move the data from source to the destination.

The deployment configuration for the self hosted MongoDB on AWS like RAM, CPU etc.
Also, are the destination deployment in both the above cases using the same configuration.?

The 100% disk utilisation alerts are generated when the requests reaches the threshold. You can learn more about the Disk IO utilisation for further understanding.

Since Atlas is self managed, from my understanding, you do not need to do settings explicitly. Please refer to Performance Management Tools for MongoDB Atlas

  1. Are there are any indexes created prior to moving the data?

  2. Lastly, what are writeconcern set for the self hosted and Atlas deployments.

Regards
Aasawari

To add to Aasawari’s response, you may want to try the following:

  1. Ensure that disks in your Atlas cluster have the same or larger amount of IOPS than your self-hosted cluster
  2. Try using Atlas LiveMigrate or mongosync for your migration