比较 MongoDB Atlas 和 Azure Cosmos DB for MongoDB
适用对象: MongoDB
Azure Cosmos DB for MongoDB 提供功能强大的完全托管的 MongoDB 兼容数据库,同时与 Azure 生态系统无缝集成。 这使开发人员能够从 Cosmos DB 的强大功能(例如多区域分布、99.999% 高可用性 SLA 和强大的安全措施)中获益,同时继续使用他们熟悉的 MongoDB 工具和应用程序。 开发人员可以保持对供应商的中立,而无需适应新的工具或大幅改变当前的运营。 这可确保 MongoDB 开发人员的平稳过渡和运营,使 Azure Cosmos DB for MongoDB 成为适合他们的 MongoDB 工作负载的可缩放、安全、高效、极具吸引力的数据库解决方案之选。
Azure Cosmos DB for MongoDB 与 MongoDB Atlas
功能 | Azure Cosmos DB for MongoDB | 由 MongoDB, Inc 提供的 MongoDB Atlas |
---|---|---|
与 MongoDB 工具和驱动程序兼容 | 是 | 是 |
全局分发 | 是,在多个区域分布,可跨任意数量的 Azure 区域进行自动快速数据复制 | 是,在多个区域分布,可跨任意数量的云提供商或区域进行手动和计划的数据复制 |
99.999% 可用性 SLA | 是 | 错误。 MongoDB Atlas 提供了一个 99.995% 可用性的 SLA |
SLA 涵盖了云平台 | 是 | 错误。 有关更多详细信息,请阅读 MongoDB Atlas SLA |
即时和自动缩放 | 是的,Azure Cosmos DB 基于 RU 的部署会自动且即时地缩放 10 倍,且不会对性能产生任何影响,基于 vCore 的 Azure Cosmos DB for MongoDB 自动缩放层会立即缩放(预览版)。 | Atlas 专用实例由用户管理,或分析一天内的工作负载后自动缩放。 |
多区域写入(也称为多主数据库) | 是。 通过多区域写入,客户可以更新任何区域中的任何文档,从而启用 99.999% 可用性的 SLA | 是的。 使用多区域写入,客户可以为每个分片配置不同的写入区域。 单个分片中的数据只在单个区域中可写。 |
无限规模 | Azure Cosmos DB 提供将 RU 扩展到甚至超过每秒 10 亿个请求的功能,同时作为服务提供无限存储和完全托管。 基于 vCore 的 Azure Cosmos DB for MongoDB 部署支持通过分片进行缩放 | MongoDB Atlas 部署支持通过分片进行缩放。 |
吞吐量和存储的独立缩放 | 是的,使用基于 RU 的 Azure Cosmos DB for MongoDB | 否 |
集成的文本搜索、地理空间处理 | 是 | 是 |
实时迁移 | 是 | 是 |
Azure 集成 | 原生第一方与 Azure 服务集成 | 第三方集成,包括一些原生 Azure 服务 |
实例配置选择 | 是的,使用基于 vCore 的 Azure Cosmos DB for MongoDB | 是 |
专家支持 | Microsoft 为 Azure Cosmos DB 提供全天候的支持服务。 Azure 支持合同涵盖所有 Azure 产品,包括 Azure Cosmos DB,这使你能够与一个支持团队合作,而无需额外的支持成本 | MongoDB 为 MongoDB Atlas 提供全天候的支持服务,提供各种 SLA 选项 |
支持 MongoDB 多文档 ACID 事务 | 是的,使用基于 vCore 的 Azure Cosmos DB for MongoDB | 是 |
JSON 数据类型支持 | BSON(二进制 JSON) | BSON(二进制 JSON) |
支持 MongoDB 聚合管道 | 是的。 支持基于 RU 的 MongoDB 线路协议 v5.0 和基于 vCore 的 v6.0 | 是 |
最大文档大小 | 16 MB(在 vCore 和 RU 体系结构中) | 16 MB |
数据管理控件的 JSON 架构 | 当前处于开发阶段 | 是 |
集成的文本搜索 | 是 | 是 |
集成查询云对象存储中的数据 | 是,使用 Synapse Link | 是 |
将数据与分析查询的联接和联合混合 | 是 | 是 |
性能建议 | 是,使用本机 Microsoft 工具 | 是 |
副本集配置 | 是的,使用基于 vCore 的 Azure Cosmos DB for MongoDB | 是 |
分片支持 | Azure Cosmos DB 支持服务器端自动分片。 它自动管理分片的创建、放置和均衡 | 支持多种分片方法,以适应各种用例。 可以在不影响应用程序的情况下更改分片策略 |
暂停和恢复群集 | 当前处于开发阶段 | 是 |
数据资源管理器 | 是的,使用原生 Azure 工具和 Azure Cosmos DB 资源管理器。 支持 Robo3T 等第三方工具 | 是的,使用原生 MongoDB 工具,例如 Compass 和 Atlas 数据资源管理器。 支持 Robo3T 等第三方工具 |
云提供商 | Azure。 MongoDB 线路协议兼容性使你可以保持供应商中立 | Azure、AWS |
基于 SQL 的连接 | 是 | 是 |
不使用第三方 BI 工具的本机数据可视化 | 是,使用 Power BI | 是的,使用 Atlas 图表 |
本地和混合部署中支持的数据库 | 否 | 是 |
具有移动设备同步的可嵌入数据库 | 否,由于用户需求低 | 是 |
精细的基于角色的访问控制 | 是 | 是 |
数据在传输过程中的加密 | 是 | 是 |
静态数据加密 | 是 | 是 |
客户端字段级别加密 | 是 | 是 |
LDAP 集成 | 是 | 是 |
数据库级别的审核 | 是 | 是 |
跨集合和分区的多文档 ACID 事务 | 是 | 是 |
通过按需还原进行连续备份 | 是 | 是 |
后续步骤
- 在将 MongoDB 应用程序连接到 Azure Cosmos DB 教程中了解如何获取帐户连接字符串信息。
- 要了解如何在 Studio 3T 中创建 Azure Cosmos DB 数据库和 MongoDB 应用之间的连接,请参阅将 Studio 3T 与 Azure Cosmos DB 配合使用教程。
- 在将 MongoDB 数据导入 Azure Cosmos DB 教程中了解如何将数据导入 Azure Cosmos DB 数据库。