什么是适用于表的 Azure Cosmos DB?
适用对象: 表
Azure Cosmos DB 是一种用于新式应用开发的完全托管的 NoSQL 数据库和关系数据库。
Azure Cosmos DB for Table 为针对 Azure 表存储编写的应用程序提供高级功能,例如:
Azure 表存储具有适用于、.NET、Java、Python、Node.js 和 Go 的 SDK。 这些 SDK 可用于针对 Azure 表存储或适用于表的 API。 使用 Azure 表 SDK 为 Azure 表存储编写的应用程序可迁移到 Azure Cosmos DB,无需更改代码即可利用高级功能。
具体来说,.NET Azure 表 SDK Azure.Data.Tables 提供表 API 支持的最新功能。 Azure 表客户端库可以无缝面向 Azure 表存储或 API for Table 服务终结点,无需更改代码。
API for Table 的好处
如果当前使用 Azure 表存储,那么改用适用于表的 API 可以获得以下好处:
Azure 表存储 | 适用于表的 API | |
---|---|---|
延迟 | 快速,但对延迟没有上限。 | 读取操作和写入操作的低至个位数的毫秒级延迟(通过以下统计数据提供支持:在中国的任何位置,对于任何规模,99% 的情况下读取和写入操作的延迟 <10 毫秒)。 |
吞吐量 | 可变吞吐量模型。 表的可伸缩性限制为 20,000 个操作/秒。 | 使用 SLA 支持的按表专用保留吞吐量实现高度可缩放。 帐户没有吞吐量上限,每个表支持 >1000 万个操作/秒。 |
多区域分布 | 具有一个可选可读辅助读取区域以实现高可用性的单一区域。 | 从一个区域到任意数量区域的统包式多区域分布。 支持在中国各地随时进行服务托管的故障转移和手动故障转移。 多个写入区域,允许任何区域接受写入操作。 |
索引 | 仅对 PartitionKey 和 RowKey 建立主索引。 没有辅助索引。 | 默认情况下,自动对所有属性完成编制索引,不进行索引管理。 |
查询 | 执行查询时使用主键的索引,否则进行扫描。 | 查询可以利用属性的自动索引缩短查询时间。 |
一致性 | 在主要区域内实现强一致性。 在辅助区域内实现最终一致性。 | 五个定义完善的一致性级别可基于应用程序需要权衡可用性、延迟、吞吐量和一致性。 |
定价 | 基于使用量。 | 提供基于使用量和预配容量两种模式。 |
SLA | 可用性为 99.9% 至 99.99%,具体取决于复制策略。 | 单区域帐户的读取可用性为 99.999%、写入可用性为 99.99%,多区域帐户的写入可用性为 99.999%。 综合性 SLA:涵盖可用性、延迟、吞吐量和一致性。 |