16、瑞士军刀——Azure Cosmos DB

瑞士军刀——Azure Cosmos DB

1. Azure Cosmos DB 中的分区

分区与 Azure Cosmos DB 的扩展直接相关,因为它允许对传入请求进行负载均衡。该服务中有两种不同类型的分区:
- 物理分区 :由固定存储和可变数量的计算资源组合而成。这种分区由 Cosmos DB 完全管理,用户无法直接影响数据的物理分区方式以及服务处理这些分区的方式,也不知道当前使用了多少个物理分区。因此,不应基于此概念设计容器。
- 逻辑分区 :包含具有相同分区键的数据。用户可以通过在每个实体中指定分区键来控制数据的分区方式。需要注意的是,逻辑分区的上限为 10 GB,并且逻辑分区的所有数据必须存储在一个物理分区内。

分区的工作流程如下:
1. 每次预配新容器并提供多个请求单位(RU)时,Cosmos DB 必须预配物理分区,以处理 RU 数量指定的请求数。
2. 如果指定的 RU 数量超过一个分区每秒可处理的最大请求数,Cosmos DB 将预配所需的分区数量以满足需求。
3. 为分区键哈希分配空间,所有预配的分区必须分配相同的空间,以实现均匀分布。
4. 如果某个分区在一段时间后达到其存储限制,它将被拆分为两个新分区,数据在它们之间均匀分布。

不同数据库模型使用的分区键不同,例如表使用分区键,SQL 使用自定义路径。虽然操作因数据库类型略有不同,但总体概念一致。如果容器中的所有实体只有一个分区键,Cosmos DB 将无法拆分分区,这意味着每个分区最多只能存储 10 GB 数据,无法再添加更多数据。

分区键的选择

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值