Referência da API REST do Armazenamento do Azure

As APIs REST dos serviços de armazenamento do Microsoft Azure oferecem acesso programático para os serviços Blob, Fila, Tabela e Ficheiro no Azure ou no ambiente de desenvolvimento através do emulador de armazenamento.

Todos os serviços de armazenamento são acessíveis através de APIs REST. Os serviços de armazenamento podem ser acedidos a partir de um serviço em execução no Azure ou diretamente através da Internet a partir de qualquer aplicação que possa enviar um pedido HTTP/HTTPS e receber uma resposta HTTP/HTTPS.

Importante

Os serviços de armazenamento do Azure suportam HTTP e HTTPS; no entanto, a utilização de HTTPS é altamente recomendada.

Conta de Armazenamento

Todo o acesso aos serviços de armazenamento ocorre através da conta de armazenamento. A conta de armazenamento é o nível mais elevado do espaço de nomes para aceder a cada um dos serviços fundamentais. É também a base para autorização.

As APIs REST para serviços de armazenamento expõem a conta de armazenamento como um recurso.

Serviço Blob

O serviço Blob fornece armazenamento para entidades, como ficheiros binários e ficheiros de texto. A API REST do serviço Blob expõe dois recursos: contentores e blobs. Um contentor é como uma pasta que contém um conjunto de blobs; cada blob tem de residir num contentor. O serviço Blob define três tipos de blobs:

  • Blobs de blocos, que estão otimizados para transmissão em fluxo. Este tipo de blob é o único tipo de blob disponível com versões anteriores a 2009-09-19.

  • Blobs de páginas, otimizados para operações aleatórias de leitura/escrita e que proporcionam a capacidade de escrever num intervalo de bytes num blob. Os blobs de páginas estão disponíveis com a versão 2009-09-19 e posterior. Estes são utilizados principalmente para os ficheiros VHD que suportam as AzureVMs.

  • Blobs de acréscimo, que são otimizados apenas para operações de acréscimo. Os blobs de acréscimo só estão disponíveis com a versão 2015-02-21 e posterior.

Os contentores e blobs suportam metadados definidos pelo utilizador na forma de pares nome-valor especificados como cabeçalhos numa operação de pedido.

Com a API REST para o serviço Blob, os programadores podem criar um espaço de nomes hierárquico semelhante a um sistema de ficheiros. Os nomes de blobs podem codificar uma hierarquia com um separador de caminho configurável. Por exemplo, os nomes de blobs MyGroup/MyBlob1 e MyGroup/MyBlob2 implicam um nível virtual de organização para blobs. A operação de enumeração para blobs suporta a passagem da hierarquia virtual de uma forma semelhante à de um sistema de ficheiros, para que possa devolver um conjunto de blobs organizados por baixo de um grupo. Por exemplo, pode enumerar todos os blobs organizados em MyGroup/.

Um blob de blocos pode ser criado de uma de duas formas. Pode carregar um blob com uma única operação Put Blob ou pode carregar um blob como um conjunto de blocos com uma operação Put Block e consolidar os blocos num blob com uma operação Colocar Lista de Blocos .

Os blobs de páginas são criados e inicializados com um tamanho máximo com uma chamada para Colocar Blob. Para escrever conteúdo num blob de página, chame a operação Colocar Página .

Os blobs de acréscimo podem ser criados ao chamar Put Blob. Um blob de acréscimo criado com a operação Put Blob não inclui conteúdo. Para escrever conteúdo num blob de acréscimo, adicione blocos ao final do blob ao chamar a operação Bloco de Acréscimo. A atualização ou eliminação de blocos existentes não é suportada. Cada bloco pode ter um tamanho diferente, até um máximo de 4 MiB. O tamanho máximo de um blob de acréscimo é 195 GiB e um blob de acréscimo não pode incluir mais de 50 000 blocos.

Os blobs suportam operações de atualização condicional que podem ser úteis para controlo de simultaneidade e carregamento eficiente.

Os blobs podem ser lidos ao chamar a operação Obter Blob . Um cliente pode ler todo o blob ou um intervalo arbitrário de bytes.

Para obter a referência da API do serviço Blob, veja API REST do Serviço de Blobs.

Serviço Fila

O serviço Fila fornece mensagens fiáveis e persistentes dentro e entre serviços. A API REST para o serviço Fila expõe dois recursos: filas e mensagens.

As filas suportam metadados definidos pelo utilizador na forma de pares nome-valor especificados como cabeçalhos numa operação de pedido.

Cada conta de armazenamento pode ter um número ilimitado de filas de mensagens com o nome exclusivo na conta. Cada fila de mensagens pode conter um número ilimitado de mensagens. O tamanho máximo de uma mensagem está limitado a 64 KiB para a versão 2011-08-18 e 8 KiB para versões anteriores.

Quando uma mensagem é lida a partir da fila, espera-se que o consumidor processe a mensagem e, em seguida, a elimine. Após a leitura da mensagem, esta torna-se invisível para outros consumidores durante um intervalo especificado. Se a mensagem ainda não tiver sido eliminada no momento em que o intervalo expirar, a respetiva visibilidade será restaurada, para que outro consumidor possa processá-la.

Para obter mais informações sobre o serviço Fila, veja API REST do Serviço de Filas.

Serviço Tabela

O serviço Tabela fornece armazenamento estruturado na forma de tabelas. O serviço Tabela suporta uma API REST que implementa o protocolo OData.

Numa conta de armazenamento, um programador pode criar tabelas. As tabelas armazenam dados como entidades. Uma entidade é uma coleção de propriedades nomeadas e os respetivos valores, semelhantes a uma linha. As tabelas são particionadas para suportar o balanceamento de carga entre nós de armazenamento. Cada tabela tem como primeira propriedade uma chave de partição que especifica a partição à qual pertence uma entidade. A segunda propriedade é uma chave de linha que identifica uma entidade numa determinada partição. A combinação da chave de partição e da chave de linha forma uma chave primária que identifica cada entidade exclusivamente dentro da tabela.

O serviço Tabela não impõe qualquer esquema. Um programador pode optar por implementar e impor um esquema do lado do cliente. Para obter mais informações sobre o serviço Tabela, veja API REST do Serviço de Tabelas.

Serviço de Ficheiros

O protocolo SMB (Server Message Block) é o protocolo preferencial de partilha de ficheiros utilizado no local atualmente. O serviço Ficheiro do Microsoft Azure permite que os clientes tirem partido da disponibilidade e escalabilidade do SMB de Infraestrutura de Cloud como Serviço (IaaS) do Azure sem terem de reescrever aplicações cliente SMB.

O serviço de Ficheiros do Azure também oferece uma alternativa apelativa às soluções tradicionais de Armazenamento Ligado Direto (DAS) e Rede de Área de Armazenamento (SAN), muitas vezes complexas e dispendiosas para instalar, configurar e operar.

Os ficheiros armazenados em partilhas de serviços de Ficheiros do Azure são acessíveis através do protocolo SMB e também através de APIs REST. O serviço Ficheiro oferece os seguintes quatro recursos: a conta de armazenamento, partilhas, diretórios e ficheiros. As partilhas fornecem uma forma de organizar conjuntos de ficheiros e também podem ser montadas como uma partilha de ficheiros SMB alojada na cloud.

Ver também

API REST da API de Fila de Espera da API REST do Serviço de BlobsAPI REST do Serviço de Ficheiros daAPI REST