了解支持的 API

已完成

Azure Cosmos DB 提供多种数据库 API,其中包括:

  • Azure Cosmos DB for NoSQL
  • Azure Cosmos DB for MongoDB
  • Azure Cosmos DB for PostgreSQL
  • Azure Cosmos DB for Apache Cassandra
  • Azure Cosmos DB for Table
  • Azure Cosmos DB for Apache Gremlin

借助这些 API,可以使用文档、键-值、图和列系列数据模型来为真实数据建模。 应用程序可以通过这些 API 将 Azure Cosmos DB 视为如同其他各种数据库技术一样,并消除管理和缩放方法所产生的开销。

选择 API 时的注意事项

适用于 NoSQL 的API 是 Azure Cosmos DB 的本机 API。

MongoDB、PostgreSQL、Cassandra、Gremlin 和表 API 实现开源数据库引擎的线路协议。 如果满足以下条件,则这些 API 最适用:

  • 如果你已有 MongoDB、PostgreSQL、Cassandra 或 Gremlin 应用程序
  • 如果你不想重写整个数据访问层
  • 如果你要为数据库使用开源开发人员生态系统、客户端驱动程序、专业知识和资源

API for NoSQL

适用于 NoSQL 的 Azure Cosmos DB API 以文档格式存储数据。 它提供最佳的端到端体验,因为我们可以完全控制接口、服务和 SDK 客户端库。 为 Azure Cosmos DB 推出的任何新功能都会首先在 API for NoSQL 帐户中提供。 NoSQL 帐户支持使用结构化查询语言 (SQL) 语法来查询项。

适用于 MongoDB 的 API

适用于 MongoDB 的 Azure Cosmos DB API通过 BSON 格式将数据存储在文档结构中。 它与 MongoDB 有线协议兼容;但是,它不使用任何本机 MongoDB 相关代码。 如果想使用更广泛的 MongoDB 生态系统和技能,而不影响使用 Azure Cosmos DB 功能,则建议使用 API for MongoDB。

API for PostgreSQL

适用于 PostgreSQL 的 Azure Cosmos DB 是一项托管服务,用于通过分布式表的 Citus 开放源代码超强功能以任意规模运行 PostgreSQL。 它将数据存储在单个节点上或分布在多个节点中。

API for Apache Cassandra

适用于 Cassandra 的 Azure Cosmos DB API将数据存储在面向列的架构中。 Apache Cassandra 提供高度分布式的水平缩放方法来存储大量数据,并针对面向列的架构提供灵活的方法。 Azure Cosmos DB 中的适用于 Cassandra 的 API 与这种接近分布式 NoSQL 数据库的理念一致。 此 API for Cassandra 是与本机 Apache Cassandra 兼容的有线协议。

API for Apache Gremlin

通过适用于Gremlin 的 Azure Cosmos DB API,用户可以发出图查询并将数据存储为边和顶点。

将适用于 Gremlin 的 API用于以下场景:

  • 涉及动态数据
  • 涉及具有复杂关系的数据
  • 涉及过于复杂而无法通过关系数据库进行建模的数据
  • 如果想使用现有 Gremlin 生态系统和技能

API for Table

适用于表的 Azure Cosmos DB API 以键/值格式存储数据。 如果你当前正在使用 Azure 表存储,可能会发现在延迟、缩放、吞吐量、全局分发、索引管理、低查询性能等方面存在一些限制。 适用于表的 API 克服了这些限制,如果你要利用 Azure Cosmos DB 的功能,建议迁移应用。 API for Table 仅支持 OLTP 场景。