From self-managed MongoDB to Azure DocumentDB
Follow these simple instructions to get dsync up and running and perform a migration from your self-managed MongoDB to an Azure DocumentDB or Cosmos DB destination.
Step 1: Download dsync
Use Docker (markadiom/dsync) or download the latest release from the GitHub Releases page. Note that on Mac devices you may need to configure a security exception to execute the binary by following these steps.
Alternatively, you can build dsync from the source code.
git clone https://github.com/adiom-data/dsync.git
cd dsync
go buildStep 2: Prepare the source MongoDB instance
If you already have the desired source MongoDB instance up and running, you can skip this step.
Install MongoDB
Start a local MongoDB instance
Load sample data
# Start a new mongod instance on localhost:27017 with dbpath ~/temp/data_d
mkdir ~/temp
cd ~/temp
mkdir data_d
mongod --dbpath data_d --logpath mongod_d.log --fork --port 27017
# Load sample data
git clone https://github.com/mcampo2/mongodb-sample-databases
cd mongodb-sample-databases
mongorestore dump/sample_mflixStep 3: Prepare the destination DocumentDB instance
If you already have the desired source Cosmos DB instance up and running, you can skip this step.
Follow official Azure documentation to set up a DocumentDB instance. For example, these are the instructions for setting up Azure DocumentDB (formerly Cosmos DB vCore for MongoDB) instance using Azure Portal: https://learn.microsoft.com/en-us/azure/cosmos-db/mongodb/vcore/quickstart-portal
Make sure to note the DocumentDB cluster MongoDB connection string: https://learn.microsoft.com/en-us/azure/cosmos-db/mongodb/vcore/quickstart-portal#get-cluster-credentials
Step 3: Start dsync
Now Dsync should be running! Feel free to interrupt the sync process (via Ctrl+C) it once the initial sync is done. The sample database has a few million records - allow 5-10 minutes for the process to complete.
Step 4: Check the data
Congratulations! You should be able to access the 'sample_mflix' database and see the collections in it that were migrated from the local MongoDB instance.
Contact us
Please reach out to us by email and on Discord for commercial inquiries and support.
Last updated
