Entender como os aplicativos interagem com os recursos de dados do Armazenamento de Blobs

À medida que você cria aplicativos para trabalhar com recursos de dados no Armazenamento de Blobs do Azure, seu código interage principalmente com três tipos de recursos: contas de armazenamento, contêineres e blobs. Este artigo explica esses tipos de recursos e mostra como eles se relacionam entre si. Também mostra como o código do aplicativo usa as bibliotecas de cliente do Armazenamento de Blobs do Azure para interagir com esses vários recursos.

Tipos de recursos do Armazenamento de Blobs

As bibliotecas de cliente do Armazenamento de Blobs do Azure permitem interagir com três tipos de recursos no serviço de armazenamento:

O diagrama a seguir mostra a relação entre esses recursos:

Diagrama mostrando a relação entre uma conta de armazenamento, contêineres e blobs

Contas de armazenamento

Uma conta de armazenamento fornece um namespace exclusivo no Azure para seus dados. Todos os objetos armazenados no Armazenamento do Azure têm um endereço que inclui o nome exclusivo da conta. A combinação do nome da conta e do ponto de extremidade Armazenamento de Blobs forma o endereço básico dos objetos na conta de armazenamento.

Por exemplo, se a conta de armazenamento se chamar sampleaccount, o ponto de extremidade padrão do Armazenamento de Blobs será:

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

Para saber mais sobre os tipos de contas de armazenamento, confira Visão geral da conta de Armazenamento do Azure.

Contêineres

Um contêiner organiza um conjunto de blobs, semelhantes a um diretório em um sistema de arquivos. Uma conta de armazenamento pode incluir um número ilimitado de contêineres e um contêiner pode armazenar um número ilimitado de blobs.

O URI de um contêiner é semelhante a:

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

Para saber mais sobre como dar nomes a contêineres, confira Nomenclatura e referência de contêineres, blobs e metadados.

Blobs

O Armazenamento do Azure dá suporte a três tipos de blobs:

  • Os blobs de blocos armazenam dados de texto e binários. Blobs de bloco são compostos de blocos de dados que podem ser gerenciados individualmente. Os blobs de blocos podem armazenar até cerca de 190,7 TiB.
  • Blobs de acréscimo são compostos de blocos, como blobs de blocos, mas são otimizados para operações de acréscimo. Blobs de acréscimo são ideais para cenários como o registro de dados das máquinas virtuais.
  • Os blobs de páginas armazenam arquivos de acesso aleatório de até 8 TiB. Para saber mais sobre blobs de páginas, confira Visão geral dos blobs de páginas do Azure

Para obter mais informações sobre os diferentes tipos de blobs, confira Compreendendo os Blobs de Blocos, Blobs de Acréscimo e Blobs de Página.

O URI de um blob é semelhante a:

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

Para saber mais sobre como dar nomes a blobs, confira Nomenclatura e referência de contêineres, blobs e metadados.

Trabalhar com recursos de dados usando o SDK do Azure

O SDK do Azure contêm bibliotecas que se baseiam na API REST do Azure, permitindo a interação com as operações da API REST por meio de paradigmas de linguagem de programação familiares. Os SDKs foram projetados para simplificar as interações entre seu aplicativo e os recursos do Azure.

Nas bibliotecas de cliente do Armazenamento de Blobs do Azure, cada tipo de recurso é representado por uma ou mais classes associadas. Essas classes fornecem operações para trabalhar com um recurso do Armazenamento do Azure.

A tabela a seguir lista as classes básicas, juntamente com uma breve descrição:

Classe Descrição
BlobServiceClient Representa a conta de armazenamento e fornece operações para recuperar e configurar as propriedades da conta e para trabalhar com contêineres de blob na conta de armazenamento.
BlobContainerClient Representa um contêiner de blob específico e fornece operações para trabalhar com o contêiner e os blobs dentro dele.
BlobClient Representa um blob específico e fornece operações gerais para trabalhar com o blob, incluindo operações para carregar, baixar, excluir e criar instantâneos.
AppendBlobClient Representa um blob de acréscimo e fornece operações específicas para acrescentar blobs, como acrescentar dados de log.
BlockBlobClient Representa um blob de blocos e fornece perações específicas para blobs de blocos, como a preparação e a confirmação de blocos de dados.

Os pacotes a seguir contêm as classes usadas para trabalhar com recursos de dados do Armazenamento de Blobs:

  • Azure.Storage.Blobs: contém as classes primárias (objetos cliente) que você pode usar para operar no serviço, contêineres e blobs.
  • Azure.Storage.Blobs.Specialized: contém classes que você pode usar para executar operações específicas a um tipo de blob, como blobs de blocos.
  • Azure.Storage.Blobs.Models: todas as outras classes, estruturas e tipos de enumeração utilitários.

Próximas etapas

O trabalho com os recursos do Azure usando o SDK começa com a criação de uma instância cliente. Para saber mais sobre a criação e gerenciamento de objetos clientes, confira o tópico Criar e gerenciar objetos cliente que interagem com recursos de dados.