Сведения о взаимодействии приложений с ресурсами данных хранилища BLOB-объектов

При создании приложений для работы с ресурсами данных в Хранилище BLOB-объектов Azure код в основном взаимодействует с тремя типами ресурсов: учетными записями хранения, контейнерами и BLOB-объектами. В этой статье описываются эти типы ресурсов и показано, как они связаны друг с другом. В нем также показано, как код приложения использует Хранилище BLOB-объектов Azure клиентские библиотеки для взаимодействия с этими различными ресурсами.

Типы ресурсов хранилища BLOB-объектов

Клиентские библиотеки Хранилище BLOB-объектов Azure позволяют взаимодействовать с тремя типами ресурсов в службе хранилища.

На следующей схеме показана связь между этими ресурсами:

Схема, на которой показана связь между учетной записью хранения, контейнерами и BLOB-объектами

Учетные записи хранения

Учетная запись хранения предоставляет для ваших данных уникальное пространство имен в Azure. У каждого объекта, который хранится в службе хранилища Azure, есть адрес, содержащий уникальное имя учетной записи. Сочетание имени учетной записи и конечной точки Хранилища BLOB-объектов формирует базовый адрес для объектов в учетной записи хранения.

Например, если ваша учетная запись хранения называется sampleaccount, то конечная точка по умолчанию для хранилища BLOB-объектов:

https://sampleaccount.blob.core.windows.net

Дополнительные сведения об типах учетных записей хранения Azure см. в этой статье.

Контейнеры

Контейнер упорядочивает набор больших двоичных объектов, как каталог в файловой системе. Учетная запись хранения может содержать неограниченное количество контейнеров. В каждом контейнере может храниться неограниченное количество больших двоичных объектов.

Универсальный код ресурса (URI) для контейнера аналогичен следующему:

https://sampleaccount.blob.core.windows.net/sample-container

Дополнительные сведения о контейнерах именования см. в статье Naming and Referencing Containers, Blobs, and Metadata (Именование контейнеров, больших двоичных объектов и метаданных и ссылка на них).

BLOB-объекты

Хранилище Azure поддерживает три типа больших двоичных объектов.

  • Блочные BLOB-объекты хранят текст и двоичные данные. Блочные большие двоичные объекты состоят из блоков данных, которыми можно управлять отдельно. Блочные BLOB-объекты могут хранить до 190,7 ТиБ.
  • Добавочные BLOB-объекты состоят из блоков, как и блочные, но оптимизированы для операций добавления. Добавочные большие двоичные объекты идеально подходят для таких сценариев, как сбор данных журналов из виртуальных машин.
  • Страничные BLOB-объекты используются для хранения файлов прямого доступа объемом до 8 ТиБ. Дополнительные сведения о страничных BLOB-объектах см. в статье Общие сведения о страничных BLOB-объектах Azure.

Дополнительные сведения о различных больших двоичных объектах см. в статье Understanding Block Blobs, Append Blobs, and Page Blobs (Основные сведения о блочных, добавочных и страничных BLOB-объектах).

Универсальный код ресурса (URI) для большого двоичного объекта аналогичен следующему:

https://sampleaccount.blob.core.windows.net/sample-container/sample-blob

Дополнительные сведения о больших двоичных объектах именования см. в статье Именование контейнеров, больших двоичных объектов и метаданных и ссылка на них.

Работа с ресурсами данных с помощью пакета AZURE SDK

Пакеты SDK для Azure содержат библиотеки, которые создаются на основе REST API Azure, что позволяет взаимодействовать с операциями REST API через знакомые парадигмы языка программирования. Пакеты SDK предназначены для упрощения взаимодействия между приложением и ресурсами Azure.

В клиентских библиотеках Хранилище BLOB-объектов Azure каждый тип ресурса представлен одним или несколькими связанными классами. Эти классы предоставляют операции для работы с ресурсом службы хранилища Azure.

В следующей таблице перечислены основные классы, а также краткое описание:

Класс Описание
BlobServiceClient Представляет учетную запись хранения и предоставляет операции для получения и настройки свойств учетной записи, а также для работы с контейнерами BLOB-объектов в учетной записи хранения.
BlobContainerClient Представляет конкретный контейнер BLOB-объектов и предоставляет операции для работы с контейнером и большими двоичными объектами внутри.
BlobClient Представляет определенный BLOB-объект и предоставляет общие операции для работы с большим двоичным объектом, включая операции по отправке, скачиванию, удалению и созданию моментальных снимков.
AppendBlobClient Представляет добавочный BLOB-объект и предоставляет операции, относящиеся к добавлению BLOB-объектов, например добавление данных журнала.
BlockBlobClient Представляет блочный BLOB-объект и предоставляет операции, характерные для блочных BLOB-объектов, такие как промежуточное хранение и фиксация блоков данных.

Следующие пакеты содержат классы, используемые для работы с ресурсами данных хранилища BLOB-объектов:

  • Azure.Storage.Blobs: содержит основные классы (клиентские объекты), которые можно использовать для работы со службой, контейнерами и BLOB-объектами.
  • Azure.Storage.Blobs.Specialized: содержит классы, которые можно использовать для выполнения операций, относящихся к типу большого двоичного объекта, таких как блочные BLOB-объекты.
  • Azure.Storage.Blobs.Models: все остальные вспомогательные классы, структуры и типы перечислений.

Дальнейшие действия

Работа с ресурсами Azure с помощью пакета SDK начинается с создания экземпляра клиента. Дополнительные сведения о создании клиентских объектов и управлении ими см. в статье Создание клиентских объектов, взаимодействующих с ресурсами данных, и управление ими.