Compartilhar via


Visão geral do desenvolvimento de aplicativos com arquivos do Azure

Este artigo fornece uma visão geral do desenvolvimento de aplicativos com os Arquivos do Azure e ajuda você a decidir qual abordagem é melhor com base nas necessidades do seu aplicativo.

Aplica-se a

Modelo de gestão Modelo de cobrança Camada de mídia Redundância SMB NFS
Microsoft.Storage Provisionado v2 HDD (padrão) Local (LRS) Sim Não
Microsoft.Storage Provisionado v2 HDD (padrão) Zona (ZRS) Sim Não
Microsoft.Storage Provisionado v2 HDD (padrão) Localização geográfica (GRS) Sim Não
Microsoft.Storage Provisionado v2 HDD (padrão) GeoZone (GZRS) Sim Não
Microsoft.Storage Provisionado v1 SSD (de alta qualidade) Local (LRS) Sim Sim
Microsoft.Storage Provisionado v1 SSD (de alta qualidade) Zona (ZRS) Sim Sim
Microsoft.Storage Pago conforme o uso HDD (padrão) Local (LRS) Sim Não
Microsoft.Storage Pago conforme o uso HDD (padrão) Zona (ZRS) Sim Não
Microsoft.Storage Pago conforme o uso HDD (padrão) Localização geográfica (GRS) Sim Não
Microsoft.Storage Pago conforme o uso HDD (padrão) GeoZone (GZRS) Sim Não

Sobre o desenvolvimento de aplicativos com arquivos do Azure

Os Arquivos do Azure oferecem várias maneiras para os desenvolvedores acessarem dados e gerenciarem recursos em compartilhamentos de arquivos do Azure. A tabela a seguir lista as abordagens, resume como elas funcionam e fornece diretrizes sobre quando usar cada abordagem:

Abordagem Como funciona Quando usar
Bibliotecas de E/S de arquivo padrão Usa chamadas de API no nível do sistema operacional por meio de compartilhamentos de arquivos do Azure montados usando os protocolos SMB (Bloco de Mensagens de Servidor) padrão do setor e NFS (Sistema de Arquivos de Rede). Ao montar um compartilhamento de arquivos usando SMB/NFS, você pode usar bibliotecas de E/S de arquivo para uma linguagem ou estrutura de programação, como System.IO para .NET e osio para Python e java.iojava.nio para Java, ou fs para JavaScript (Node.js). Você tem aplicativos de linha de negócios com código existente que usa E/S de arquivo padrão e não deseja reescrever o código para que o aplicativo funcione com um compartilhamento de arquivos do Azure.
FileREST API Acessa diretamente os pontos de extremidade HTTPS para interagir com os dados armazenados nos Arquivos do Azure. Fornece controle programático sobre recursos de compartilhamento de arquivos. O SDK do Azure fornece bibliotecas de clientes que se baseiam na API FileREST, permitindo que você interaja com as operações da API FileREST por meio de paradigmas familiares da linguagem de programação. Você está criando aplicativos e serviços de nuvem com valor agregado para clientes e deseja usar recursos avançados não disponíveis por meio de protocolos nativos.
API REST do provedor de recursos de armazenamento Usa o ARM (Azure Resource Manager) para gerenciar contas de armazenamento e compartilhamentos de arquivos. Chama os pontos de extremidade da API REST para várias operações de gerenciamento de recursos. Seu aplicativo ou serviço precisa executar tarefas de gerenciamento de recursos, como criar, excluir ou atualizar contas de armazenamento ou compartilhamentos de arquivos.

Bibliotecas de E/S de arquivo padrão

As bibliotecas de E/S de arquivo são a maneira mais comum de acessar e trabalhar com recursos de Arquivos do Azure. Quando você monta um compartilhamento de arquivos usando SMB ou NFS, seu sistema operacional redireciona solicitações de API para o sistema de arquivos local. Essa abordagem permite que você use bibliotecas de E/S de arquivo padrão para sua linguagem ou estrutura de programação preferida, como System.IO para .NET os e io para Python, java.io e java.nio para Java, ou fs para JavaScript (Node.js).

Considere usar bibliotecas de entrada/saída de arquivo quando seu aplicativo exigir:

  • Compatibilidade do aplicativo: Ideal para aplicativos de linha de negócios com código existente que já usa E/S de arquivo padrão. Você não precisa reescrever o código para que o aplicativo funcione com um compartilhamento de arquivos do Azure.
  • Facilidade de uso: As bibliotecas de E/S de arquivo padrão são bem conhecidas pelos desenvolvedores e fáceis de usar. Uma proposta de valor chave dos Arquivos do Azure é que ele expõe APIs nativas do sistema de arquivos por meio de SMB e NFS.

Outras considerações:

  • Acesso à rede: O SMB se comunica pela porta 445 e o NFS se comunica pela porta 2049. Verifique se essas portas não estão bloqueadas do computador cliente. Para obter mais informações, consulte as considerações de rede para arquivos do Azure.

FileREST API

A API FileREST fornece acesso programático aos Arquivos do Azure. Ele permite que você chame os pontos de extremidade HTTPS para realizar operações em compartilhamentos de arquivos, diretórios e arquivos. A API FileREST foi projetada para alta escalabilidade e recursos avançados que podem não estar disponíveis por meio de protocolos nativos. O SDK do Azure fornece bibliotecas de cliente que se baseiam na API FileREST.

Considere usar a API FileREST e as bibliotecas de cliente do Compartilhamento de Arquivos se o aplicativo exigir:

  • Recursos avançados: Acessar operações e recursos que não estão disponíveis por meio de protocolos nativos.
  • Integrações de nuvem personalizadas: Crie serviços personalizados de valor agregado, como backup, antivírus ou gerenciamento de dados, que interagem diretamente com os Arquivos do Azure.
  • Otimização de desempenho: Aproveite as vantagens de desempenho em cenários de alta escala usando operações de plano de dados.

A API FileREST modela os Arquivos do Azure como uma hierarquia de recursos e é recomendada para operações executadas no nível do diretório ou do arquivo . Para saber mais sobre as bibliotecas de clientes específicas do idioma que se baseiam na API FileREST, consulte as Bibliotecas para acesso a dados.

API REST do provedor de recursos de armazenamento

O provedor de recursos do Armazenamento do Azure é um serviço baseado no Azure Resource Manager e dá suporte a métodos declarativos (modelos) e imperativos (chamada direta à API). A API REST do provedor de recursos do Armazenamento do Azure fornece acesso programático aos recursos do Armazenamento do Azure, incluindo compartilhamentos de arquivos. O SDK do Azure fornece bibliotecas de gerenciamento que se baseiam na API REST do provedor de recursos do Armazenamento do Azure.

O provedor de recursos de armazenamento é recomendado para operações executadas no nível do serviço de arquivo ou compartilhamento de arquivos. Para saber mais sobre as bibliotecas de gerenciamento específicas do idioma que se baseiam na API REST do provedor de recursos do Armazenamento do Azure, consulte as Bibliotecas para gerenciamento de recursos.

Bibliotecas do SDK do Azure para Arquivos do Azure

O SDK do Azure fornece dois conjuntos de bibliotecas para trabalhar com recursos de Arquivos do Azure. Um conjunto de bibliotecas baseia-se na API FileREST e foi projetado para lidar com operações de acesso a dados no nível do diretório ou do arquivo . Às vezes, essas bibliotecas são conhecidas como o plano de dados. Outro conjunto de bibliotecas se baseia na API REST do provedor de recursos do Armazenamento do Azure e foi projetado para lidar com operações de gerenciamento de recursos no nível do serviço de arquivo ou compartilhamento de arquivos. Essas bibliotecas às vezes são conhecidas como o plano de controle (ou plano de gerenciamento).

Bibliotecas para acesso a dados

As bibliotecas de plano de dados são projetadas para lidar com operações de acesso a dados no nível do diretório ou do arquivo . As seções a seguir mostram a biblioteca de clientes Compartilhamentos de Arquivos para .NET, Java, Python, JavaScript e Go.

A tabela a seguir mostra a biblioteca de clientes de Compartilhamentos de Arquivos para acesso a dados:

Biblioteca Referência Pacote Fonte
Azure.Storage.Files.Shares Referência NuGet GitHub

Para saber mais sobre como usar a biblioteca de clientes de Compartilhamentos de Arquivos para cenários específicos de acesso a dados, consulte o Develop for Azure Files com .NET.

Bibliotecas para gerenciamento de recursos

As bibliotecas de plano de controle se baseiam na API REST do provedor de recursos do Armazenamento do Azure, permitindo que você gerencie os recursos do Armazenamento do Azure. O provedor de recursos do Armazenamento do Azure é um serviço baseado no Azure Resource Manager e dá suporte a métodos declarativos (modelos) e imperativos (chamada direta à API).

As bibliotecas de gerenciamento de recursos são projetadas para lidar com operações de gerenciamento de recursos no nível de serviço de arquivo ou compartilhamento de arquivo. Para saber mais sobre as operações, consulte Serviços de Arquivos ou Compartilhamentos de Arquivos. As seções a seguir mostram as bibliotecas de gerenciamento do Armazenamento do Azure para .NET, Java, Python, JavaScript e Go.

A tabela a seguir mostra a biblioteca de clientes do Armazenamento do Azure para gerenciamento de recursos:

Biblioteca Referência Pacote Fonte
Azure.ResourceManager.Storage Referência NuGet GitHub

Para saber mais sobre como usar a biblioteca de gerenciamento do Armazenamento do Azure para cenários específicos de gerenciamento de recursos, confira o Guia do desenvolvedor da biblioteca de gerenciamento do Armazenamento do Azure para .NET.