了解资源层次结构

已完成

Azure Cosmos DB 帐户是全局分配和高可用性的基本单元。 你的 Azure Cosmos DB 帐户包含唯一的域名系统 (DNS) 名称,可以使用 Azure 门户、Azure CLI 或不同的特定于语言的 SDK 来管理帐户。 要在多个 Azure 区域之间全局分配数据和吞吐量,可随时在帐户中添加和删除 Azure 区域。

Azure Cosmos DB 帐户中的元素

Azure Cosmos DB 容器是基本的缩放单元。 容器可以提供几乎无限的预配吞吐量 (RU/s) 和存储。 Azure Cosmos DB 使用指定的逻辑分区键以透明方式将容器分区,以弹性缩放预配吞吐量和存储。

目前,你可以在 Azure 订阅下创建最多 50 个 Azure Cosmos DB 帐户(可以通过支持请求增加)。 在 Azure 订阅下创建帐户后,可通过创建数据库、容器和项来管理帐户中的数据。

下图显示 Azure Cosmos DB 帐户中不同实体的层次结构:

该图显示了 Azure Cosmos DB 实体的层次结构:数据库帐户在顶部,数据库在帐户下按组聚合,容器在数据库下按组聚合。

Azure Cosmos DB 数据库

可以在帐户下创建一个或多个 Azure Cosmos DB 数据库。 数据库类似于命名空间, 数据库是一组 Azure Cosmos DB 容器的管理单位。

Azure Cosmos DB 容器

Azure Cosmos DB 容器用于存储数据。 与大多数通过虚拟机的大尺寸纵向扩展的关系数据库不同,Azure Cosmos DB 采用横向扩展。

数据存储在一个或多个称为分区的服务器上。 若要增加分区,可以增加吞吐量;分区也会随着存储的增加而自动增长。 此关系为容器提供了几乎无限量的吞吐量和存储。

创建容器时,需要提供分区键。 分区键是从项中选择的属性,可帮助 Azure Cosmos DB 跨分区有效地分发数据。 Azure Cosmos DB 会应用此属性的值,将数据路由到要写入、更新或删除的合适分区。 还可以在查询中使用WHERE子句中的分区键来高效检索数据。

Azure Cosmos DB 中数据的基础存储机制称为物理分区。 物理分区的吞吐量可达每秒 10,000 个请求单位,且最多可以存储 50 GB 的数据。 Azure Cosmos DB 使用可存储多达 20 GB 数据的逻辑分区对此分区概念进行抽象。

创建容器时,会在以下某种模式下配置吞吐量:

  • 专用吞吐量:容器的吞吐量专门保留给该容器使用。 有两种类型的专用吞吐量:标准和自动缩放。

  • 共享吞吐量:吞吐量是在数据库级别指定的,最多可与数据库中 25 个容器共享。 吞吐量共享不适用于本身已配置了专用吞吐量的容器。

Azure Cosmos DB 项

根据所使用的 API,各个数据实体可以通过多种方式表示:

Azure Cosmos DB 实体 API for NoSQL API for Cassandra 适用于 MongoDB 的 API API for Gremlin API for Table
Azure Cosmos DB 项 项目 文档 节点或边缘