什么是云数据库MongoDB版

云数据库MongoDB版(ApsaraDB for MongoDB)旨在简化您的数据库部署和管理过程,是阿里云基于飞天分布式系统和高可靠存储引擎研发的文档数据库,提供多节点高可用架构、弹性扩容、备份恢复等功能。其完全兼容MongoDB协议,用于处理非结构化或半结构化数据,广泛应用于移动应用、物联网、游戏和社交等场景。

MongoDB的基础概念

阅读本文前,您可能需要了解如下概念:

  • 云数据库:一种基于云计算平台的数据库服务,用户无需关心数据库的底层配置和维护,通过互联网即可轻松使用数据库服务。详情请参见什么是云数据库?

  • NoSQL:非关系型数据库系统。采用灵活的数据模型(如键值对、文档等)以支持快速开发和水平扩展,能够处理大量分布式数据、支持多种数据结构和快速查询性能,适合大数据和实时Web应用等领域。详情请参见什么是NoSQL?

  • MongoDB一款开源的文档型数据库,以动态的模式存储类似JSONBSON文档,能够处理大量的非结构化数据。具备灵活的数据模型、高效的索引机制等特点,适用于需要快速迭代和存储多样化数据格式的应用场景。详情请参见什么是MongoDB?

数据结构

MongoDB是面向文档的NoSQL数据库,它的数据结构由字段(Field)和值(Value)组成,类似于JSON对象,示例如下:

{
    name:"张三",
    sex:"男性",
    age:30
}

存储结构

MongoDB的存储结构区别于传统的关系型数据库,由如下三个单元组成:

MongoDB术语

说明

对应的关系型数据库术语

文档(Document)

MongoDB中最基本的单元,由BSON键值对(key-value)组成。

行(Row)

集合(Collection)

一个集合可以包含多个文档。

表格(Table)

数据库(Database)

一个数据库中可以包含多个集合。您可以在MongoDB中创建多个数据库。

数据库(Database)

为什么选择云数据库MongoDB

  • 灵活的部署架构。云数据库MongoDB版具有灵活的部署架构,能够满足测试、学习培训、读多写少、高并发读写等多种业务场景。

  • 支持弹性扩容。云数据库MongoDB版提供了变更实例配置功能,支持变更实例规格、存储空间和节点数量等操作,方便您快速应对业务变化。

  • 丰富的数据迁移与同步工具。支持控制台、MongoDB官方提供的工具以及阿里云自主研发的工具实现数据迁移和同步。

  • 完善的安全措施。提供RAM授权、审计日志、网络隔离、白名单、密码认证、透明数据加密TDE等多种手段保障数据库数据安全。

  • 广泛的应用场景。基于灵活的数据模型、丰富的查询语言和索引类型、分布式架构等特性,在移动应用、物联网、游戏、社交等领域被广泛采用。

详情请参见产品优势应用场景

学习路径

您可以通过云数据库MongoDB版学习路径,由浅入深地了解云数据库MongoDB版的相关概念、基础操作、进阶操作等。

免费试用

阿里云提供免费试用云数据库MongoDB的活动,详情请参见免费试用

产品定价

云数据库MongoDB的计费项,请参见收费项目及价格说明

使用方式

阿里云提供多种方式,满足不同用户管理MongoDB实例的需求,进行实例创建、网络设置、数据库创建、账号创建等操作。

管理方式

适用场景

说明

控制台

适合初学者或者需要快速管理数据库实例的用户,通过图形化界面管理,操作简便。

提供图形化的Web界面,操作方便。

CLI

需要通过命令行管理数据库实例。

控制台上所有的操作都可以通过CLI实现。

SDK下载

适合在应用程序中集成管理数据库实例,支持多种编程语言,例如Java、Python、Go等。

控制台上所有的操作都可以通过SDK实现。

API

更加灵活和标准化的管理方式,适合需要广泛集成或跨平台交互的场景。

控制台上所有的操作都可以通过API实现。

创建MongoDB实例后,您可以通过以下方式访问MongoDB实例:

访问方式

适用场景

说明

DMS

适合初学者或想要通过Web界面进行数据库开发工作的用户,操作方便。

通过DMS连接MongoDB副本集实例

Mongo Shell

使用MongoDB官方命令行工具对数据库进行管理操作,适合有开发背景的用户。

通过Mongo Shell连接MongoDB副本集实例

客户端

云数据库MongoDB版完全兼容MongoDB协议,您可以使用通用的数据库客户端工具访问MongoDB实例。

例如Robo 3T、Studio 3T

后续操作

  • 创建MongoDB实例。您可以通过快速入门创建并使用MongoDB实例,详细信息请参见入门概述。创建实例时建议您从以下维度部署:

    • 地域和可用区。地域和可用区决定了MongoDB实例的物理位置,创建后无法更换,建议从用户地理位置、阿里云产品发布情况、应用可用性以及内网通信需求等因素选择地域和可用区。更多信息,请参见地域和可用区

      例如,您的应用部署在云服务器ECS(Elastic Compute Service)上,建议选择与ECS实例相同的地域和可用区创建MongoDB实例,以降低网络延时。

    • 网络规划。确定地域后,您可以自行规划私网IP地址段并创建专有网络VPC,然后将MongoDB部署在先前创建的VPC中,也可以部署在默认的VPC中。详情请参见新建实例场景下配置专有网络

  • 本地MongoDB数据库迁移上云。云数据库MongoDB完全兼容MongoDB协议,您可以使用数据传输服务DTS(Data Transmission Service)或MongoDB工具将本地MongoDB数据库迁移上云,详细操作请参见数据迁移和同步。关于DTS的相关信息,请参见DTS

  • 管理MongoDB实例。您可以自行管理维护云数据库MongoDB,也可以通过数据库自治服务DAS(Database Autonomy Service)查询云数据库MongoDB的实时性能和实时操作,分析慢日志、管理存储空间等。关于DAS的更多信息,请参见DAS

关于云数据库MongoDB版支持的版本和功能列表,请参见功能概览