Azure 006 – Contas de Armazenamento

https://docs.microsoft.com/pt-br/azure/storage/common/storage-introduction

As contas de armazenamento do Azure (Storage Accounts) é um serviço SaaS que permite os clientes armazenarem diferentes de modelos de dados. As principais características são:

  • Durável e alta disponibilidade: redundância dos recursos garantem segurança contra falhas de hardware. A possibilidade de replicação entre datacenters e regiões aumenta a proteção contra catástrofes naturais.
  • Segurança: todos os dados são criptografados em trânsito e em repouso. E as contas de armazenamento suportam um controle de acesso em níveis detalhados.
  • Escalabilidade: o design da solução foi definido para permitir escalabilidade em massa.
  • Gerenciamento: O Azure fica responsável pelo gerenciamento de manutenções e atualizações no serviço.
  • Acessibilidade: acessível por HTTP/HTTPS, aplicativo Storage Explorer, SDK em várias linguagens, Azure CLI e Powershell, além do portal do Azure.
Microsoft Azure Storage Explained by Dremio - Dremio

Dentro de uma conta de armazenamento podemos ter os seguintes modelos de dados:

  • Queue Storage (Filas): serviço que implementa a estrutura de dados de do tipo fila (FIFO – First-in First-out – O primeiro elemento que entra é o primeiro elemento que sai) . Essa fila recebe mensagens no formato JSON, e são produzidas por diversos tipos de aplicações e podem ser consumidos por outras aplicações. (https://azure.microsoft.com/en-us/services/storage/queues/)
Queue (abstract data type) - Wikipedia

Para criar uma nova conta devemos selecionar a assinatura e o grupo de recurso. Em seguida é necessário informar um nome de uma conta que deve ser único em todo o Azure pois será utilizado como URL de acesso ao recurso. A localização é o parâmetro que seleciona em qual região será criado o recurso. Na performance podemos selecionar o modelo Standard que é mais barato e usa discos magnéticos para armazenamento, portanto com menor performance. O tipo Premium tem um valor mais elevado pois utiliza SSDs para o armazenamento dos dados, portanto mais performance. O tipo da conta V1 é o modelo original da conta de armazenamento, e a V2 é o novo modelo que dá suporte a novas funcionalidades como Data Lake.

Na replicação tempos como opção: LRS (redundância de armazenamento local dentro da região), GRS (redundância global), RA-GRS (redundância global mas apenas para leitura). O nível de acesso é o modelo de retenção que os arquivos vão utilizar por padrão: Hot (acesso rápido, e mais caro), cool (acesso rápido, mas com menor custo). Ainda existe o nível de acesso archive (que é o mais barato e com acesso mais lento [até 18 horas para recuperar os arquivos]).

Na próxima etapa pode ser definido o modelo de rede que será utilizado no storage.

Na próxima etapa temos as seguintes opções que podem ser selecionadas:

  • Secure trasnfer required: habilita criptografia em trânsito com TLS;
  • Large file shares: suporte a arquivos maiores que 100TB;
  • Blob soft delete: habilita a possibilidade de recuperar arquivos excluídos nos blobs;
  • File share soft delete: habilita a possibilidade de recuperar arquivos dentro dos file shares SMB;
  • Versionamento: suporta o versionamento dos objetos em um blob storage;
  • Hierarchical namespace: habilita ACLs para arquivos do Datalake
  • NFS v3: suporte ao Network File System Protocol

Uma vez criada a conta de armazenamento, é possível selecionar a opção Containers para verificar os containers blob existentes.

Em seguida clique no botão para adicionar um novo Container, e informe seu nome. Mantenha a opção de nível de acesso como privado.

Em seguida acione o botão Upload, selecione o nome do arquivo e abra a área de propriedades avançadas. Mantenha o Access tier como Hot e informe o valor fotos no campo upload to folder.

Após o processo de upload completo, ao retornar para o container voce vai observar que uma pasta fotos foi criada e que dentro dela há o arquivo.

Clique no arquivo contido dentro da pasta e será apresentada uma tela contendo os detalhes de acesso do arquivo blob. Clique no botão para copiar a URL do blob.

Se você tentar acessar essa URL você observará que um erro será retornado, pois como o blob esta privado, não é permitido o acesso anônimo de usuários aos arquivos.

É possível modificar o módo de armazenamento clicando na opção Change tier.

Clique na opção para gerar um Token SAS.

Se você copiar a URL completa com o Token SAS terá acesso ao blob dentro das regras definidas pelo token.

Retornando ao menu inicial da conta de armazenamento existe a opção de definir o gerenciamento do ciclo de vida de um arquivo no blob. A proposta é construir um conjunto de regras que permita que a própria conta gerencie quanto tempo um arquivo deverá ser mantido ou se ele será transferido para um nível de armazenamento mais barato.

É possível ainda criar regras para determinadas pastas virtuais dentro do blob.