Benefits of migrating MongoDB, Cassandra, Couchbase and relational databases to Azure Cosmos DB
By Patrik Bihammar, Azure Open Data Platform Lead at Microsoft Asia
Today, applications are expected to be highly responsive and always available. They need to respond in real-time, store massive volumes of data, and make this data available to users in milliseconds. To achieve this, developers need to ensure millisecond response times, ultra-low latency, ultra-high availability, and instant and limitless scalability.
That’s a tall ask and requires:
- Flexible data models that support both structured and unstructured data
- Limitless, immediate, and elastic scalability
- Low latency to ensure instant responsiveness across the globe
- Always-on high availability
The good news is that Azure Cosmos DB, a horizontally scalable NoSQL database-as-a-service (DBaaS) platform, meets all these requirements and backs it up with financially backed SLAs.
If you are reading this, you might already be familiar with the benefits of NoSQL databases such as the ones referenced in the title. In short, NoSQL in general and Azure Cosmos DB in particular, offer a number of key benefits over traditional relational databases, including “limitless” scalability, through horizontal partitioning, flexible schema, very low latency and very high availability.
What is Azure Cosmos DB?
Azure Cosmos DB is a multi-model NoSQL platform offered as a fully managed Database-as-Service (DBaaS) for modern apps. It offers SLA-backed ultra-low latency (<10ms) and 99.999% of availability, automatic and instant scalability and uniquely supports multiple open APIs (SQL/Core, MongoDB, Cassandra, Gremlin).
As a managed database service, Azure Cosmos DB reduces an organization’s operational burden through automatic management, updates, and patching. It can also handle capacity management with cost-effective serverless and automatic scaling that responds to applications’ needs to match capacity with demand. This allows an organization to focus on their application not their database administration.
Migrating from existing NoSQL databases to Azure Cosmos DB DBaaS
Due to these unique benefits, we often work with customers to help them migrate their existing MongoDB, Cassandra and Couchbase deployments to Azure Cosmos DB DBaaS.
Migrating from MongoDB to Azure Cosmos DB
There are several reasons why customers are migrating from MongoDB to Azure Cosmos DB, including scalability, the need for better HA/DR, the reduced operational burden because of managed service experience, and the fact that the application is being run or migrated to Azure.
Here are some resources for MongoDB to Azure Cosmos DB migration guidance:
- Pre-migration steps for data migration to Azure Cosmos DB’s API for MongoDB
- Migrate MongoDB online to Azure Cosmos DB API for MongoDB documentation
- Migrate your MongoDB data to Cosmos DB
- Migrating MongoDB to Azure Cosmos DB Recording
Migrating from Cassandra to Azure Cosmos DB
There are two managed Cassandra options available on Azure, the Azure Cosmos DB Cassandra API and the Apache Cassandra Managed Instance service.
Here is some more detail about the differences and when to choose what option and why and how Symantec migrated their Cassandra clusters to Azure.
Here is some guidance on how to migrate Cassandra to Azure:
- Migrate data from Apache Cassandra to the Azure Cosmos DB Cassandra API
- Configure a hybrid cluster with Azure Managed Instance for Apache Cassandra
- Migrate to Azure Managed Instance for Apache Cassandra using Hybrid Cluster
- Migrate to Azure Managed Instance for Apache Cassandra using Apache Spark
- Live migration to Azure Managed Instance for Apache Cassandra using a dual-write proxy
Migrating from Couchbase and AWS DynamoDB to Azure Cosmos DB
Other common NoSQL migration scenarios and guidance include:
- Migrating from Couchbase to Azure Cosmos DB SQL API
- Migrating from Amazon DynamoDB to Azure Cosmos DB
Migrating from traditional relational databases to Azure Cosmos DB
Finally, in addition to migrating from other NoSQL databases, many customers migrate from a traditional relational database to Azure Cosmos DB when they need to modernize their applications and want to leverage on a NoSQL database to ensure their application can scale.
Here is some guidance on Migrating relational data into Azure Cosmos DB SQL API.
Hopefully you will find this information useful for your NoSQL DBaaS migration journey!
To get started you can try Azure Cosmos DB for free or use the Azure Cosmos DB free tier to get an account with the first 1000 RU/s and 25 GB of storage for free.
1. Common use cases for NoSQL with Azure Cosmos DB | LinkedIn
2. 5 Reasons Azure Cosmos DB is a great NoSQL DBaaS Platform | LinkedIn
3. 8 Reasons you should consider DBaaS on Azure | LinkedIn