ApsaraDB for MongoDB is a MongoDB-compatible database service that is developed based on the Apsara system and a high-reliability storage engine. ApsaraDB for MongoDB uses a multi-node architecture to ensure high availability, and supports elastic scaling, disaster recovery, backup and restoration, and performance optimization.

Flexible deployment architectures

ApsaraDB for MongoDB supports multiple deployment architectures to meet the requirements of different business scenarios.

Deployment architectures of ApsaraDB for MongoDB:
  • Architecture of standalone instances

    Standalone instances are suitable for development, testing, education, and scenarios where non-core enterprise data is stored. You can select the instance specifications that are most suitable for your business scenarios to minimize costs. For more information, see Standalone instances.

  • Architecture of replica set instances

    Replica set instances are suitable for burst traffic scenarios that require significantly more reads than writes or temporary activities. A replica set instance consists of a primary node that supports read and write operations, one, three, or five high-availability secondary nodes, a hidden node, and up to five optional read-only nodes. You can add or remove secondary nodes and read-only nodes based on your business needs. For more information, see Replica set instances.

  • Architecture of sharded cluster instances

    Sharded cluster instances are suitable for scenarios that require highly concurrent read and write operations. A sharded cluster instance is based on multiple three-node replica set instances. Each replica set instance contains three nodes in primary/secondary mode and up to five optional read-only nodes. A sharded cluster instance consists of three types of components: mongos, shard, and Configserver nodes. You can specify the number and specifications of mongos and shard nodes to create sharded cluster instances that have different service capabilities. For more information, see Architecture of sharded cluster instances.

Elastic scaling

ApsaraDB for MongoDB allows you to change instance configurations to adapt to shifting business needs. You can change the configurations of an instance (instance specifications, storage capacity, and number of nodes) based on your business needs. You can also specify that the new configurations take effect during off-peak hours to avoid possible impacts on your business. For more information, see Overview.

Compatibility with DynamoDB

ApsaraDB for MongoDB is fully compatible with the MongoDB protocol. Sharded cluster instances of MongoDB 4.0 are highly compatible with the DynamoDB protocol. You can directly create DynamoDB-compatible sharded cluster instances in the console. For more information, see Create a DynamoDB-compatible ApsaraDB for MongoDB instance.

Support for Alibaba Cloud developed tools

ApsaraDB for MongoDB allows you to migrate and synchronize data by using the ApsaraDB for MongoDB console or native MongoDB tools. In addition, you can use the following Alibaba Cloud developed tools.
Tool Description
NimoShake
A data synchronization tool. You can use this tool to migrate Amazon DynamoDB databases to Alibaba Cloud. For more information, see Migrate an Amazon DynamoDB database to ApsaraDB for MongoDB by using NimoShake.
MongoShake
A general tool developed in the Go language to synchronize data. You can use this tool to synchronize data among MongoDB databases. For more information, see Use MongoShake to implement one-way synchronization between ApsaraDB for MongoDB replica set instances.
NimoFullCheck
A tool used to verify the data consistency between source DynamoDB and destination MongoDB databases. You can use this tool to check data consistency when you migrate data in a DynamoDB database to an ApsaraDB for MongoDB instance. For more information, see Use NimoFullCheck to check data consistency after migration.

Others

ApsaraDB for MongoDB also excels in service availability, data reliability, security, and O&M costs. For more information, see Comparison between ApsaraDB for MongoDB and self-managed databases.