MongoDB Atlas 由与 MongoDB 构建相同的团队交付。但这并不是您唯一可用的 MongoDB 服务。以下图表显示了不同选项的比较情况。
*截至 2021 年 3 月
MongoDB Atlas | Amazon DocumentDB | Cosmos DB Emulation API | |
---|---|---|---|
云服务提供商选择 | 是 AWS、Azure 和 Google Cloud,包括跨所有三个云平台的 多云集群 | 否 | 否 |
集成文本搜索、地理空间处理 | 是 | 有限 数据必须复制到多个相邻 AWS 服务以进行文本搜索,仅提供基本地理空间运算符,增加了成本和复杂性 | 有限 对地理空间数据的某些支持,但索引有限 |
支持所有 MongoDB 功能,与应用程序完全兼容 | 是 运行原生 MongoDB | 否 声称为 v4.0 API 兼容,实际上更接近 3.6。没有 MongoDB 服务器端代码。 在兼容性测试中失败 66% | |
访问最新的 MongoDB 版本 | 是 运行 v7.0、6.0、5.0 或 v4.4。 | 否 声称为 v4.0 API 兼容,但部分不正确。 | 否 声称为 v4.0 API 兼容,实际上更接近 3.6。 |
免费层 | 是 存储:512 MB,RAM:可变 | 否 | 有限 仅限于前 400 RU/s。非沙盒环境,因此如果使用量超过 400RU 限制,则无法避免成本 |
实时迁移 | 是 对初始中断具有抵抗力,可筛选,拓扑无关。 | 是 作为单独的付费服务提供 | 是 仅适用于符合条件的账户 |
实例配置选择 | 是 多个实例大小和类别 | 有限 大约只有十几个实例,全部为 AWS 类别,限制了适应不同工作负载配置的灵活性 | 否 基于配置的吞吐量进行配置。无法独立选择底层硬件配置 |
支持 MongoDB 多文档 ACID 事务 | 是 | 有限 缺少功能,在标准 MongoDB 测试套件中的事务测试中失败了一半 | 有限 仅在一个单一的非分片集合内支持多文档事务;MongoDB 的大部分事务测试都失败了 |
支持 JSON 数据类型 | BSON (二进制 JSON) 常规 JSON + 长整型、双精度浮点型、浮点型、十进制、日期和时间 | 原始JSON 和一些高级数据类型,但不支持十进制 | BSON 某些数据类型有限制,包括一旦设置就无法修改 |
最大文档大小 | 16MB | 16MB | 2MB |
数据治理控制用的JSON模式 | 是 | 否 所有模式控制都必须在应用层编写 | 否 所有模式控制都必须在应用层编写 |
集成文本搜索和图查询 | 是 MongoDB聚合管道和Atlas Search | 部分 没有集成文本搜索 | 部分 没有集成文本搜索 |
集成查询云对象存储中的数据 | 否 | 否 | |
在线归档 自动将数据从数据库迁移到云对象存储 | 是 在线归档 | 否 | 否 |
通过连接和并集进行数据融合以进行分析查询 | 是 | 否 | 否 |
自动性能建议 | 是 具有模式和索引建议的性能顾问 | 否 | 否 |
副本集配置 | 最多50个副本 所有副本配置为数据节点 | 最多15个副本 副本不是数据节点。DocumentDB在存储层维护数据的6个副本 | 3个数据节点 |
自动分片支持 | 没有分片支持 所有写入都必须对单个主节点进行。 | 是 但是,不支持调整所选分片键,如果需要以任何方式更改分片键,则必须强制进行完整的数据库迁移。 | |
权衡读取 向多个副本提交查询以实现一致的低延迟 | 是 | 否 | 否 |
暂停和恢复集群 | 是 | 是 | 否 |
数据探索器 | 是 直接在Atlas UI中,或通过MongoDB Compass | 否 | 是 |
基于SQL的BI连接 | 否 | 是 仅Power BI和Qlik Sense | |
无需第三方BI工具的本地数据可视化 | 否 | 否 | |
支持本地和混合部署的数据库 | 否 | 否 | |
可嵌入的数据库,适用于同步移动、边缘和物联网设备 | 否 | 否 |
MongoDB Atlas | |
---|---|
云服务提供商选择 | 是 AWS、Azure 和 Google Cloud,包括跨所有三个云平台的 多云集群 |
集成文本搜索、地理空间处理 | 是 |
支持所有 MongoDB 功能,与应用程序完全兼容 | 是 运行原生 MongoDB |
访问最新的 MongoDB 版本 | 是 运行 v7.0、6.0、5.0 或 v4.4。 |
免费层 | 是 存储:512 MB,RAM:可变 |
实时迁移 | 是 对初始中断具有抵抗力,可筛选,拓扑无关。 |
实例配置选择 | 是 多个实例大小和类别 |
支持 MongoDB 多文档 ACID 事务 | 是 |
支持 JSON 数据类型 | BSON (二进制 JSON) 常规 JSON + 长整型、双精度浮点型、浮点型、十进制、日期和时间 |
最大文档大小 | 16MB |
数据治理控制用的JSON模式 | 是 |
集成文本搜索和图查询 | 是 MongoDB聚合管道和Atlas Search |
集成查询云对象存储中的数据 | |
在线归档 自动将数据从数据库迁移到云对象存储 | 是 在线归档 |
通过连接和并集进行数据融合以进行分析查询 | 是 |
自动性能建议 | 是 具有模式和索引建议的性能顾问 |
副本集配置 | 最多50个副本 所有副本配置为数据节点 |
自动分片支持 | |
权衡读取 向多个副本提交查询以实现一致的低延迟 | 是 |
暂停和恢复集群 | 是 |
数据探索器 | 是 直接在Atlas UI中,或通过MongoDB Compass |
基于SQL的BI连接 | |
无需第三方BI工具的本地数据可视化 | |
支持本地和混合部署的数据库 | |
可嵌入的数据库,适用于同步移动、边缘和物联网设备 |
Amazon DocumentDB | |
---|---|
云服务提供商选择 | 否 |
集成文本搜索、地理空间处理 | 有限 数据必须复制到多个相邻 AWS 服务以进行文本搜索,仅提供基本地理空间运算符,增加了成本和复杂性 |
支持所有 MongoDB 功能,与应用程序完全兼容 | |
访问最新的 MongoDB 版本 | 否 声称为 v4.0 API 兼容,但部分不正确。 |
免费层 | 否 |
实时迁移 | 是 作为单独的付费服务提供 |
实例配置选择 | 有限 大约只有十几个实例,全部为 AWS 类别,限制了适应不同工作负载配置的灵活性 |
支持 MongoDB 多文档 ACID 事务 | 有限 缺少功能,在标准 MongoDB 测试套件中的事务测试中失败了一半 |
支持 JSON 数据类型 | 原始JSON 和一些高级数据类型,但不支持十进制 |
最大文档大小 | 16MB |
数据治理控制用的JSON模式 | 否 所有模式控制都必须在应用层编写 |
集成文本搜索和图查询 | 部分 没有集成文本搜索 |
集成查询云对象存储中的数据 | 否 |
在线归档 自动将数据从数据库迁移到云对象存储 | 否 |
通过连接和并集进行数据融合以进行分析查询 | 否 |
自动性能建议 | 否 |
副本集配置 | 最多15个副本 副本不是数据节点。DocumentDB在存储层维护数据的6个副本 |
自动分片支持 | 没有分片支持 所有写入都必须对单个主节点进行。 |
权衡读取 向多个副本提交查询以实现一致的低延迟 | 否 |
暂停和恢复集群 | 是 |
数据探索器 | 否 |
基于SQL的BI连接 | 否 |
无需第三方BI工具的本地数据可视化 | 否 |
支持本地和混合部署的数据库 | 否 |
可嵌入的数据库,适用于同步移动、边缘和物联网设备 | 否 |
Cosmos DB Emulation API | |
---|---|
云服务提供商选择 | 否 |
集成文本搜索、地理空间处理 | 有限 对地理空间数据的某些支持,但索引有限 |
支持所有 MongoDB 功能,与应用程序完全兼容 | 否 声称为 v4.0 API 兼容,实际上更接近 3.6。没有 MongoDB 服务器端代码。 在兼容性测试中失败 66% |
访问最新的 MongoDB 版本 | 否 声称为 v4.0 API 兼容,实际上更接近 3.6。 |
免费层 | 有限 仅限于前 400 RU/s。非沙盒环境,因此如果使用量超过 400RU 限制,则无法避免成本 |
实时迁移 | 是 仅适用于符合条件的账户 |
实例配置选择 | 否 基于配置的吞吐量进行配置。无法独立选择底层硬件配置 |
支持 MongoDB 多文档 ACID 事务 | 有限 仅在一个单一的非分片集合内支持多文档事务;MongoDB 的大部分事务测试都失败了 |
支持 JSON 数据类型 | BSON 某些数据类型有限制,包括一旦设置就无法修改 |
最大文档大小 | 2MB |
数据治理控制用的JSON模式 | 否 所有模式控制都必须在应用层编写 |
集成文本搜索和图查询 | 部分 没有集成文本搜索 |
集成查询云对象存储中的数据 | 否 |
在线归档 自动将数据从数据库迁移到云对象存储 | 否 |
通过连接和并集进行数据融合以进行分析查询 | 否 |
自动性能建议 | 否 |
副本集配置 | 3个数据节点 |
自动分片支持 | 是 但是,不支持调整所选分片键,如果需要以任何方式更改分片键,则必须强制进行完整的数据库迁移。 |
权衡读取 向多个副本提交查询以实现一致的低延迟 | 否 |
暂停和恢复集群 | 否 |
数据探索器 | 是 |
基于SQL的BI连接 | 是 仅Power BI和Qlik Sense |
无需第三方BI工具的本地数据可视化 | 否 |
支持本地和混合部署的数据库 | 否 |
可嵌入的数据库,适用于同步移动、边缘和物联网设备 | 否 |
MongoDB Atlas | Amazon DocumentDB | Cosmos DB Emulation API | |
---|---|---|---|
支持全球写入的主动-主动集群 来自世界各地的低延迟写入 | 是 | 否 仅AWS区域,只有一个可写节点 | 是 由于冲突解决而存在数据丢失的风险。读取最终可能是一致的(返回过时或已删除的数据) |
跨区域复制 将数据分布在世界各地以实现多区域容错和本地读取 | 是 | 有限 只读操作。写入锁定到主节点 | 是 读取最终可能是一致的(返回过时或已删除的数据) |
MongoDB Atlas | |
---|---|
支持全球写入的主动-主动集群 来自世界各地的低延迟写入 | 是 |
跨区域复制 将数据分布在世界各地以实现多区域容错和本地读取 | 是 |
Amazon DocumentDB | |
---|---|
支持全球写入的主动-主动集群 来自世界各地的低延迟写入 | 否 仅AWS区域,只有一个可写节点 |
跨区域复制 将数据分布在世界各地以实现多区域容错和本地读取 | 有限 只读操作。写入锁定到主节点 |
Cosmos DB Emulation API | |
---|---|
支持全球写入的主动-主动集群 来自世界各地的低延迟写入 | 是 由于冲突解决而存在数据丢失的风险。读取最终可能是一致的(返回过时或已删除的数据) |
跨区域复制 将数据分布在世界各地以实现多区域容错和本地读取 | 是 读取最终可能是一致的(返回过时或已删除的数据) |
MongoDB Atlas | Amazon DocumentDB | Cosmos DB Emulation API | |
---|---|---|---|
自动扩展计算和存储 | 是 | 否。 仅存储 | 是 自动扩展增加50%的费用,只能在特定级别内扩展 |
通过自动警报监控数据库健康 | 是 MongoDB Atlas UI和APM平台(例如,New Relic)的支持 | 部分 仅公开有限数量的账户级指标 | 部分 仅公开有限数量的账户级指标 |
具有按需点时间恢复功能的备份快照 | 是 | 是 | 否 每4小时拍摄一次快照。必须提出服务票证以支持Cosmos DB的备份恢复。必须在8小时内完成或快照将被覆盖且数据丢失 |
可查询的备份 | 是 | 否 | 否 |
自动和一致的分片集群快照 | 是 | 不适用 不支持分片 | 是 |
MongoDB Atlas | |
---|---|
自动扩展计算和存储 | 是 |
通过自动警报监控数据库健康 | 是 MongoDB Atlas UI和APM平台(例如,New Relic)的支持 |
具有按需点时间恢复功能的备份快照 | 是 |
可查询的备份 | 是 |
自动和一致的分片集群快照 | 是 |
Amazon DocumentDB | |
---|---|
自动扩展计算和存储 | 否。 仅存储 |
通过自动警报监控数据库健康 | 部分 仅公开有限数量的账户级指标 |
具有按需点时间恢复功能的备份快照 | 是 |
可查询的备份 | 否 |
自动和一致的分片集群快照 | 不适用 不支持分片 |
Cosmos DB Emulation API | |
---|---|
自动扩展计算和存储 | 是 自动扩展增加50%的费用,只能在特定级别内扩展 |
通过自动警报监控数据库健康 | 部分 仅公开有限数量的账户级指标 |
具有按需点时间恢复功能的备份快照 | 否 每4小时拍摄一次快照。必须提出服务票证以支持Cosmos DB的备份恢复。必须在8小时内完成或快照将被覆盖且数据丢失 |
可查询的备份 | 否 |
自动和一致的分片集群快照 | 是 |
MongoDB Atlas | Amazon DocumentDB | Cosmos DB Emulation API | |
---|---|---|---|
可查询加密 在不解密的情况下对加密数据进行表达式查询 | 是 | 否 | 否 |
客户端字段级加密 正在使用中的数据加密。数据不可由服务提供商读取 | 是 | 否 | 部分 仅预览且功能有限 |
自带KMS | 是 | 否 仅AWS KMS | 否 仅Azure密钥保管库 |
细粒度基于角色的访问控制 | 是 | 部分 仅限有限粗粒度角色 | 部分 仅限有限粗粒度角色 |
AWS VPC对等连接 | 是 | 是 | 不适用 |
飞行中数据的加密 | 是 作为标准使用TLS/SSL | 是 | 是 |
静态数据的加密 | 是 | 是 | 是 |
LDAP集成 | 是 | 否 | 是 |
数据库级别审计 跟踪DDL、DML、DCL操作 | 是 | 否 | 是 |
MongoDB Atlas | |
---|---|
可查询加密 在不解密的情况下对加密数据进行表达式查询 | 是 |
客户端字段级加密 正在使用中的数据加密。数据不可由服务提供商读取 | 是 |
自带KMS | 是 |
细粒度基于角色的访问控制 | 是 |
AWS VPC对等连接 | 是 |
飞行中数据的加密 | 是 作为标准使用TLS/SSL |
静态数据的加密 | 是 |
LDAP集成 | 是 |
数据库级别审计 跟踪DDL、DML、DCL操作 | 是 |
Amazon DocumentDB | |
---|---|
可查询加密 在不解密的情况下对加密数据进行表达式查询 | 否 |
客户端字段级加密 正在使用中的数据加密。数据不可由服务提供商读取 | 否 |
自带KMS | 否 仅AWS KMS |
细粒度基于角色的访问控制 | 部分 仅限有限粗粒度角色 |
AWS VPC对等连接 | 是 |
飞行中数据的加密 | 是 |
静态数据的加密 | 是 |
LDAP集成 | 否 |
数据库级别审计 跟踪DDL、DML、DCL操作 | 否 |
Cosmos DB Emulation API | |
---|---|
可查询加密 在不解密的情况下对加密数据进行表达式查询 | 否 |
客户端字段级加密 正在使用中的数据加密。数据不可由服务提供商读取 | 部分 仅预览且功能有限 |
自带KMS | 否 仅Azure密钥保管库 |
细粒度基于角色的访问控制 | 部分 仅限有限粗粒度角色 |
AWS VPC对等连接 | 不适用 |
飞行中数据的加密 | 是 |
静态数据的加密 | 是 |
LDAP集成 | 是 |
数据库级别审计 跟踪DDL、DML、DCL操作 | 是 |
MongoDB Atlas | Amazon DocumentDB | Cosmos DB Emulation API | |
---|---|---|---|
由MongoDB工程师直接提供的数据库支持 | 是 可根据可选支持合同使用 | 否 | 否 |
由具有多年MongoDB经验的工程师提供的咨询服务 | 否 | 否 |
MongoDB Atlas | |
---|---|
由MongoDB工程师直接提供的数据库支持 | 是 可根据可选支持合同使用 |
由具有多年MongoDB经验的工程师提供的咨询服务 |
Amazon DocumentDB | |
---|---|
由MongoDB工程师直接提供的数据库支持 | 否 |
由具有多年MongoDB经验的工程师提供的咨询服务 | 否 |
Cosmos DB Emulation API | |
---|---|
由MongoDB工程师直接提供的数据库支持 | 否 |
由具有多年MongoDB经验的工程师提供的咨询服务 | 否 |