Azure Cosmos DB 简介:MongoDB API

Azure Cosmos DB 是 21Vianet 针对任务关键型应用程序提供的多区域分布式多模型数据库服务。 Azure Cosmos DB 在多个区域提供统包式多区域分发吞吐量和存储的弹性扩展、99% 的情况下低至个位数的毫秒级延迟以及得到保证的高可用性,所有这些均由行业领先的 SLA 提供支持。 Azure Cosmos DB 自动为数据编制索引,无需客户管理架构和索引。 它采用多种模型,支持文档和列式数据模型。

Azure Cosmos DB: MongoDB API

可将 Azure Cosmos DB 数据库用作针对 MongoDB 编写的应用的数据存储。 此功能意味着,通过使用现有驱动程序,为 MongoDB 编写的应用程序现在可与 Azure Cosmos DB 进行通信,并可使用 Azure Cosmos DB 数据库而不是 MongoDB 数据库。 在许多情况下,只需更改连接字符串便可从使用 Azure Cosmos DB 切换到使用 MongoDB。 使用此功能,可以在 Azure 云中轻松生成和运行 MongoDB 多区域分布式数据库应用程序(利用 Azure Cosmos DB 及其行业领先的综合性 SLA),并且可继续使用熟悉的技能和 MongoDB 工具。

MongoDB 兼容性:可使用现有 MongoDB 专业知识、应用程序代码和工具,因为 Azure Cosmos DB 实现 MongoDB 网络协议。 可使用 MongoDB 开发应用程序,并使用完全托管的多区域分布式 Azure Cosmos DB 服务将其部署到生产环境。 有关受支持版本的详细信息,请参阅 MongoDB 协议支持

使用适用于 MongoDB 应用程序的 Azure Cosmos DB 有什么好处?

可弹性缩放的吞吐量和存储: 轻松增大或减小 MongoDB 数据库规模来满足应用程序需求。 数据存储在固态硬盘 (SSD) 上,以实现可预测的低延迟。 Azure Cosmos DB 支持几乎可以扩展到无限存储大小和预配吞吐量的 MongoDB 集合。 随着应用程序规模的增长,可以弹性无缝地扩展 Azure Cosmos DB 且其性能可以预测。

多区域复制: Azure Cosmos DB 以透明方式将数据复制到与 MongoDB 帐户关联的所有区域,使用户能够开发那些对多区域数据访问有要求的应用程序,与此同时还在一致性、可用性和性能方面做出权衡,所有这些都有相应的保证。 Azure Cosmos DB 通过多宿主 API 提供透明区域故障转移,还可以弹性缩放多区域吞吐量和存储。 在分发多区域数据中了解详细信息。

没有服务器管理:无需管理和缩放 MongoDB 数据库。 Azure Cosmos DB 是完全托管的服务,这意味着无需自己管理任何基础结构或虚拟机。 Azure Cosmos DB 在 30 多个 Azure 区域中可用。

可调整的一致性级别: 由于 Azure Cosmos DB 支持多模型 API,因此一致性设置在帐户级别适用,并由每个 API 控制一致性的实施。 在 MongoDB 3.6 以前,没有会话一致性的概念,因此如果将 MongoDB API 帐户设置为使用会话一致性,则使用 MongoDB API 时,该一致性会降级为最终一致性。 如果需要向某个 MongoDB API 帐户提供“读取自己的写入”保证,该帐户的默认一致性级别应设置为“强”或“有限过期”。 有关详细信息,请参阅使用一致性级别最大化可用性和性能

Azure Cosmos DB 的默认一致性级别 Mongo API (3.4)
最终 最终
一致前缀 具有一致顺序的最终
会话 具有一致顺序的最终
有限过期

自动编制索引: 默认情况下,Azure Cosmos DB 自动为 MongoDB 数据库文档中的所有属性编制索引,无需任何架构或创建二级索引。 此外,唯一索引功能可以针对已在 Azure Cosmos DB 中自动编制索引的所有文档字段启用唯一性约束。

企业级:Azure Cosmos DB 支持多个本地副本,在面对本地和区域故障时提供 99.99% 的可用性和数据保护。 Azure Cosmos DB 具有企业级符合性认证和安全功能。

如何入门

请按照 MongoDB 快速入门来创建 Azure Cosmos DB 帐户,并迁移现有 MongoDB 应用程序以使用 Azure Cosmos DB,或者生成一个新的应用程序:

后续步骤

有关 Azure Cosmos DB MongoDB API 的信息已整合到整个 Azure Cosmos DB 文档中,以下是几个入门指南: