了解应用如何与 Blob 存储数据资源交互

在生成应用程序以使用 Azure Blob 存储中的数据资源时,代码主要与三种资源类型进行交互:存储帐户、容器和 Blob。 本文将介绍这些资源类型,并说明它们彼此之间的关系。 还演示了应用程序代码如何使用 Azure Blob 存储客户端库与这些资源进行交互。

Blob 存储资源类型

Azure Blob 存储客户端库允许与存储服务中三种类型的资源进行交互:

以下图示显示了这些资源之间的关系:

Diagram showing the relationship between a storage account, containers, and blobs

存储帐户

存储帐户在 Azure 中为数据提供唯一的命名空间。 存储在 Azure 存储中的每个对象都有一个地址,其中包含唯一的帐户名称。 帐户名称与 Blob 存储终结点的组合构成了存储帐户中对象的基址。

例如,如果存储帐户名为 sampleaccount,则 Blob 存储的默认终结点为:

https://sampleaccount.blob.core.chinacloudapi.cn

若要详细了解存储帐户的类型,请参阅 Azure 存储帐户概述

容器

容器对一组 blob 进行组织,类似于文件系统中的目录。 一个存储帐户可以包含无限数量的容器,一个容器可以存储无限数量的 Blob。

容器的 URI 类似于:

https://sampleaccount.blob.core.chinacloudapi.cn/sample-container

有关命名容器的详细信息,请参阅命名和引用容器、Blob 和元数据

Blob

Azure 存储支持三种类型的 Blob:

  • 块 Blob 存储文本和二进制数据。 块 Blob 由可以分别管理的数据块构成。 块 blob 最多可存储约 190.7 TiB。
  • 与块 Blob 一样,追加 Blob 也由块构成,但针对追加操作进行了优化。 追加 Blob 非常适用于诸如记录来自虚拟机的数据之类的场景。
  • 页 Blob 用于存储最大 8 TiB 的随机访问文件。 有关页 Blob 的更多信息,请参阅 Azure 页 Blob 概述

有关不同类型 Blob 的详细信息,请参阅 Understanding Block Blobs, Append Blobs, and Page Blobs(了解块 Blob、追加 Blob 和页 Blob)。

blob 的 URI 类似于:

https://sampleaccount.blob.core.chinacloudapi.cn/sample-container/sample-blob

有关命名 blob 的详细信息,请参阅命名及引用容器、blob 和元数据

使用 Azure SDK 处理数据资源

Azure SDK 包含基于 Azure REST API 生成的库,允许你通过熟悉的编程语言范式与 REST API 操作进行交互。 SDK 旨在简化应用程序与 Azure 资源之间的交互。

在 Azure Blob 存储客户端库中,每个资源类型由一个或多个关联的类表示。 这些类提供用于处理 Azure 存储资源的操作。

下表列出了带有简要说明的基本类:

说明
BlobServiceClient 表示存储帐户,并提供用于检索和配置帐户属性以及处理存储帐户中的 Blob 容器的操作。
BlobContainerClient 表示特定的 Blob 容器,并提供用于处理容器和其中的 blob 的操作。
BlobClient 表示特定的 Blob,并提供用于处理 Blob 的常规操作,包括上传、下载、删除和创建快照的操作。
AppendBlobClient 表示追加 blob,并提供特定于追加 blob 的操作,例如追加日志数据。
BlockBlobClient 表示块 Blob,并提供特定于块 blob 的操作,例如暂存和随后提交数据块。

以下包中包含了用于处理 Blob 存储数据资源的类:

后续步骤

使用 SDK 处理 Azure 资源从创建客户端实例开始。 要详细了解如何创建和管理客户端对象,请参阅创建和管理与数据资源交互的客户端对象