什么是 Azure 表存储?

提示

本文中的内容适用于原始的 Azure 表存储。 不过,相同概念也适用于较新的 Azure Cosmos DB for Table,后者提供更高的性能和可用性、全局分布和自动辅助索引。 它还可用于基于使用量的无服务器模式。 Azure Cosmos DB 中的表 API 和 Azure 表存储之间存在某些功能差异。 有关详细信息,请参阅 Azure Cosmos DB for Table。 为了便于开发,我们现在提供统一的 Azure 表 SDK,它可用于同时面向 Azure 表存储和 Azure Cosmos DB for Table。

Azure 表存储是一项用于在云中存储非关系结构化数据(也称为结构化 NoSQL 数据)的服务,通过无架构设计提供键/属性存储。 因为表存储无架构,因此可以很容易地随着应用程序需求的发展使数据适应存储。 对于许多类型的应用程序来说,访问表存储数据速度快且经济高效,在数据量相似的情况下,其成本通常比传统 SQL 要低。

可以使用表存储来存储灵活的数据集,例如 Web 应用程序的用户数据、通讯簿、设备信息,或者服务需要的其他类型的元数据。 可以在表中存储任意数量的实体,并且一个存储帐户可以包含任意数量的表,直至达到存储帐户的容量极限。

什么是表存储

Azure 表存储可存储大量结构化数据。 该服务是一个 NoSQL 数据存储,接受来自 Azure 云内部和外部的通过验证的呼叫。 Azure 表最适合存储结构化非关系型数据。 表存储的常见用途包括:

  • 存储 TB 量级的结构化数据,能够为 Web 规模应用程序提供服务
  • 存储无需复杂联接、外键或存储过程,并且可以对其进行非规范化以实现快速访问的数据集
  • 使用聚集索引快速查询数据
  • 使用 OData 协议和 LINQ 查询以及 WCF 数据服务 .NET 库访问数据

可以使用表存储来存储和查询大型结构化非关系型数据集,并且表会随着需求的增加而扩展。

表存储概念

表存储包含以下组件:

Tables storage component diagram

  • URL 格式: Azure 表存储帐户使用此格式:http://<storage account>.table.core.chinacloudapi.cn/<table>

    Azure Cosmos DB for Table 帐户使用此格式:http://<storage account>.table.cosmosdb.azure.cn/<table>

    可以直接使用此地址和 OData 协议来访问 Azure 表。 有关详细信息,请参阅 OData.org

  • 帐户: 对 Azure 存储进行的所有访问都要通过存储帐户完成。 有关存储帐户的详细信息,请参阅存储帐户概述

    对 Azure Cosmos DB 的所有访问都通过 Azure Cosmos DB for Table 帐户来完成。 有关详细信息,请参阅创建 Azure Cosmos DB for Table 帐户

  • Table:表是实体的集合。 表不对实体强制实施架构,这意味着单个表可以包含具有不同属性集的实体。

  • 实体:与数据库行类似,一个实体就是一组属性。 Azure 存储中的实体大小最大可以为 1MB。 Azure Cosmos DB 中的实体大小最大可以为 2MB。

  • 属性:属性是名称/值对。 每个实体最多可包含 252 个用于存储数据的属性。 每个实体还具有三个系统属性,分别指定分区键、行键和时间戳。 对具有相同分区键的实体的查询速度将更快,并且可以在原子操作中插入/更新这些实体。 一个实体的行键是它在一个分区内的唯一标识符。

有关命名表和属性的详细信息,请参阅 了解表服务数据模型

后续步骤