Referência da API REST do Armazenamento do Azure

As APIs REST para os serviços de armazenamento do Microsoft Azure oferecem acesso programático aos serviços de Blob, Consulta, Tabela e Arquivo no Azure ou no ambiente de desenvolvimento por meio do emulador de armazenamento.

Todos os serviços de armazenamento são acessíveis por meio das APIs de REST. É possível acessar os serviços de armazenamento a partir de um serviço em execução no Azure, ou diretamente na Internet, a partir de qualquer aplicativo que possa enviar solicitações HTTP/HTTPS e receber respostas HTTP/HTTPS.

Importante

Os serviços de armazenamento do Azure oferecem suporte ao HTTP e HTTPS. No entanto, usar HTTPS é altamente recomendável.

Conta de Armazenamento

Todo o acesso a serviços de armazenamento ocorre por meio da conta de armazenamento. A conta de armazenamento representa o nível mais alto do namespace para acessar cada serviço fundamental. Também é a base para autorização.

As APIs de 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 arquivos binários e arquivos de texto. A API de REST para o serviço Blob expõe dois recursos: contêineres e blobs. Um contêiner é como uma pasta, contendo um conjunto de blobs; cada blob deve residir em um contêiner. O serviço Blob define três tipos de blobs:

  • Blobs de blocos, que são otimizados para streaming. Esse tipo de blob é o único tipo disponível em versões anteriores à 2009-09-19.

  • Blobs de páginas, que são otimizados para operações de leitura/gravação aleatórias e que fornece a capacidade de gravar em um intervalo de bytes em um blob. Os blobs de página estão disponíveis com a versão 2009-09-19 e posterior. Eles são usados principalmente para os arquivos VHD que dão suporte às AzureVMs.

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

Os contêineres e os blobs oferecem suporte a metadados definidos pelo usuário na forma de pares de nome/valor especificados como cabeçalhos em uma operação de solicitação.

Com a API de REST para o serviço Blob, os desenvolvedores podem criar um namespace hierárquico semelhante a um sistema de arquivos. Os nomes de Blob podem criar uma hierarquia usando um separador de caminho configurável. Por exemplo, os nomes de blob MyGroup/MyBlob1 e MyGroup/MyBlob2 implicam um nível virtual de organização para blobs. A operação de enumeração de blobs dá suporte ao desvio da hierarquia virtual de um modo semelhante à de um sistema de arquivos, de forma que você possa retornar um conjunto de blobs que são organizados abaixo de um grupo. Por exemplo, você pode enumerar todos os blobs organizados em MyGroup/.

É possível criar um blob de blocos de duas maneiras. Você pode carregar um blob com uma única operação Colocar Blob ou carregar um blob como um conjunto de blocos com uma operação Put Block e confirmar os blocos em um blob com uma operação Put Block List .

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

Os blobs de acréscimo podem ser criados chamando Colocar Blob. Um blob de acréscimo criado com a operação Colocar Blob não inclui nenhum conteúdo. Para gravar conteúdo em um blob de acréscimo, adicione blocos ao final do blob chamando a operação Anexar Bloco . Não há suporte para a atualização ou exclusão de blocos existentes. Cada bloco pode ter um tamanho diferente, até um máximo de 4 MiB. O tamanho máximo de um blob de acréscimo é de 195 GiB e um blob de acréscimo não pode incluir mais de 50.000 blocos.

Os blobs oferecem suporte às operações de atualização condicionais que podem ser úteis para o controle de simultaneidade e carregamento eficiente.

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

Para obter a referência da API do serviço Blob, consulte API REST do Serviço blob.

Serviço Fila

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

As filas oferecem suporte a metadados definidos pelo usuário na forma de pares de nome-valor especificados como cabeçalhos em uma operação de solicitação.

Cada conta de armazenamento pode ter um número ilimitado de filas de mensagens que são nomeadas exclusivamente dentro da conta. Cada fila de mensagens pode conter um número ilimitado de mensagens. O tamanho máximo de uma mensagem é limitado a 64 KiB para as versões 2011-08-18 e 8 KiB para versões anteriores.

Quando uma mensagem é lida na fila, espera-se que o cliente processe a mensagem e a exclua. Depois que a mensagem é lida, ela se torna invisível para outros clientes por um intervalo especificado. Se a mensagem ainda não tiver sido excluída no momento em que o intervalo expirar, sua visibilidade será restaurada, de modo que outro cliente possa processá-la.

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

Serviço Tabela

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

Em uma conta de armazenamento, um desenvolvedor pode criar tabelas. As tabelas armazenam dados como entidades. Entidade é uma coleção de propriedades nomeadas e seus valores, semelhante a uma linha. As tabelas são particionadas para oferecer suporte ao balanceamento de carga entre os nós de armazenamento. Cada tabela tem como a primeira propriedade uma chave de partição que especifica a partição à qual uma entidade pertence. A segunda propriedade é uma chave de linha que identifica uma entidade em uma determinada partição. A combinação da chave de partição e chave de linha forma uma chave primária que identifica exclusivamente cada entidade dentro da tabela.

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

Serviço de arquivos

O protocolo SMB (Bloco de Mensagens do Servidor) é o protocolo de compartilhamento de arquivos preferencial usado localmente hoje. O serviço de arquivo do Microsoft Azure permite que os clientes utilizem a disponibilidade e escalabilidade da infraestrutura de nuvem do Azure como um SMB de serviço (IaaS) sem reescrever aplicativos de cliente SMB.

O serviço de arquivo do Azure também oferece uma alternativa atraente às soluções DAS e SAN tradicionais, que geralmente são complexas e caras para instalar, configurar e operar.

Os arquivos armazenados em compartilhamentos do serviço de arquivo do Azure são acessíveis pelo protocolo SMB e também por meio de APIs REST. O serviço Arquivo oferece os quatro recursos a seguir: a conta de armazenamento, os compartilhamentos, os diretórios e os arquivos. Os Compartilhamentos fornecem uma maneira de organizar conjuntos de arquivos e também podem ser montados como um compartilhamento de arquivo SMB hospedado na nuvem.

Confira também

API REST da API REST do Serviço de BlobAPI REST Serviço API REST Serviço APIREST API SERVIÇO DE ARQUIVO REST API