Partilhar via


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

Este artigo fornece uma visão geral do desenvolvimento de aplicativos com 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 faturação Nível de média Redundância SMB NFS
Microsoft.Armazenamento Provisionado v2 HDD (padrão) Localização (LRS) Sim Não
Microsoft.Armazenamento Provisionado v2 HDD (padrão) Zona (ZRS) Sim Não
Microsoft.Armazenamento Provisionado v2 HDD (padrão) Geo (GRS) Sim Não
Microsoft.Armazenamento Provisionado v2 HDD (padrão) GeoZona (GZRS) Sim Não
Microsoft.Armazenamento Provisionado v1 SSD (Premium) Localização (LRS) Sim Sim
Microsoft.Armazenamento Provisionado v1 SSD (Premium) Zona (ZRS) Sim Sim
Microsoft.Armazenamento Pagamento conforme o uso HDD (padrão) Localização (LRS) Sim Não
Microsoft.Armazenamento Pagamento conforme o uso HDD (padrão) Zona (ZRS) Sim Não
Microsoft.Armazenamento Pagamento conforme o uso HDD (padrão) Geo (GRS) Sim Não
Microsoft.Armazenamento Pagamento conforme o uso HDD (padrão) GeoZona (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 orientação sobre quando usar cada abordagem:

Abordagem Como funciona Quando utilizar
Bibliotecas de E/S de arquivo padrão Usa chamadas de API no nível do SO por meio de compartilhamentos de arquivos do Azure montados usando os protocolos SMB (Server Message Block) e NFS (Network File System) padrão do setor. Ao montar uma partilha de ficheiros usando SMB/NFS, pode utilizar bibliotecas de E/S de ficheiros para uma linguagem de programação ou estrutura, como System.IO para .NET, os e io para Python, java.io e java.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 Chama endpoints HTTPS diretamente para interagir com os dados armazenados em Arquivos do Azure. Fornece controle programático sobre recursos de compartilhamento de arquivos. O SDK do Azure fornece bibliotecas de cliente que se baseiam na API FileREST, permitindo que você interaja com operações da API FileREST por meio de paradigmas familiares de linguagem de programação. Você está criando serviços e aplicativos de nuvem de 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 Azure Resource Manager (ARM) para gerenciar contas de armazenamento e compartilhamentos de arquivos. Chama endereços da API REST para várias operações de gestão 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 ficheiros são a forma mais comum de aceder e trabalhar com recursos dos Ficheiros do Azure. Quando você monta um compartilhamento de arquivos usando SMB ou NFS, seu sistema operacional redireciona as 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 de programação ou estrutura preferida, como System.IO para .NET, os Python iojava.io e java.nio Java, ou fs para JavaScript (Node.js).

Considere o uso de bibliotecas de entrada/saída de ficheiros quando a sua aplicação exigir:

  • Compatibilidade de aplicativos: 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 utilização: As bibliotecas de E/S de arquivos padrão são bem conhecidas pelos desenvolvedores e fáceis de usar. Uma proposta de valor fundamental 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. Certifique-se de que essas portas não estejam bloqueadas na máquina cliente. Para obter mais informações, consulte Considerações de rede para arquivos do Azure.

FileREST API

A API FileREST fornece acesso programático aos Arquivos do Azure. Permite ao utilizador aceder aos endpoints HTTPS para realizar operações em partilhas de ficheiros, diretórios e ficheiros. 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 de compartilhamento de arquivos se seu aplicativo exigir:

  • Funcionalidades avançadas: Aceda a operações e funcionalidades que não estão disponíveis através de protocolos nativos.
  • Integrações personalizadas na nuvem: 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: Beneficie-se das 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 de diretório ou arquivo . Para saber mais sobre as bibliotecas de cliente específicas do idioma que se baseiam na API FileREST, consulte 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 Gerenciador de Recursos do Azure e dá suporte aos métodos declarativo (modelos) e imperativo (chamada direta de 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 de Armazenamento do Azure.

O provedor de recursos de armazenamento é recomendado para operações executadas no nível de serviço oucompartilhamento 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 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 do Azure Files. Um conjunto de bibliotecas se baseia na API FileREST e foi projetado para lidar com operações de acesso a dados no nível de diretório ou arquivo . Essas bibliotecas às vezes são chamadas de plano de dados. Outro conjunto de bibliotecas se baseia na API REST do provedor de recursos de Armazenamento do Azure e foi projetado para lidar com operações de gerenciamento de recursos no nível de serviço ou compartilhamento de arquivos . Essas bibliotecas às vezes são chamadas de plano de controle (ou plano de gerenciamento).

Bibliotecas para acesso a dados

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

A tabela a seguir mostra a biblioteca de cliente de compartilhamentos de arquivos para acesso a dados:

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

Para saber mais sobre como usar a biblioteca de cliente de Compartilhamentos de Arquivos para cenários específicos de acesso a dados, consulte Desenvolver para arquivos do Azure com .NET.

Bibliotecas para gestão de recursos

As bibliotecas de plano de controle são criadas sobre a API REST do provedor de recursos de 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 Gerenciador de Recursos do Azure e dá suporte aos métodos declarativo (modelos) e imperativo (chamada direta de 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 ou compartilhamento de arquivos . Para saber mais sobre as operações, consulte Serviços de arquivo 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 cliente do Armazenamento do Azure para gerenciamento de recursos:

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

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