Escolha uma tecnologia de armazenamento de big data no Azure
Nota
Em 29 de fevereiro de 2024 , o Azure Data Lake Storage Gen1 será desativado. Para obter mais informações, veja o anúncio oficial. Se você usar o Azure Data Lake Storage Gen1, certifique-se de migrar para o Azure Data Lake Storage Gen2 antes dessa data. Para saber como, consulte Migrar o Armazenamento do Azure Data Lake de Gen1 para Gen2 usando o portal do Azure.
A menos que você já tenha uma conta do Azure Data Lake Storage Gen1, não poderá criar novas.
Este tópico compara opções de armazenamento de dados para soluções de big data — especificamente, armazenamento de dados para ingestão de dados em massa e processamento em lote, em oposição a armazenamentos de dados analíticos ou ingestão de streaming em tempo real.
Quais são suas opções ao escolher o armazenamento de dados no Azure?
Há várias opções para ingerir dados no Azure, dependendo das suas necessidades.
Armazenamento de ficheiros:
Bases de dados NoSQL:
Bases de dados analíticas:
Blobs de Armazenamento do Azure
O Armazenamento do Azure é um serviço de armazenamento gerenciado que é altamente disponível, seguro, durável, escalável e redundante. A Microsoft trata da manutenção e lida com os problemas críticos por si. O Armazenamento do Azure é a solução de armazenamento mais ubíqua que o Azure fornece, devido ao número de serviços e ferramentas que podem ser usados com ele.
Há vários serviços de Armazenamento do Azure que você pode usar para armazenar dados. A opção mais flexível para armazenar blobs de muitas fontes de dados é o armazenamento de Blobs. Blobs são basicamente arquivos. Eles armazenam imagens, documentos, arquivos HTML, discos rígidos virtuais (VHDs), big data, como logs, backups de bancos de dados — praticamente qualquer coisa. Os blobs são armazenados em contentores, que são semelhantes a pastas. Um contêiner fornece um agrupamento de um conjunto de blobs. Uma conta de armazenamento pode conter um número ilimitado de contentores, e um contentor pode armazenar um número ilimitado de blobs.
O Armazenamento do Azure é uma boa opção para soluções de big data e análise, devido à sua flexibilidade, alta disponibilidade e baixo custo. Ele fornece níveis de armazenamento quentes, frescos e arquivados para diferentes casos de uso. Para obter mais informações, consulte Armazenamento de Blob do Azure: camadas de armazenamento quentes, frias e de arquivamento.
O armazenamento de Blob do Azure pode ser acessado do Hadoop (disponível por meio do HDInsight). O HDInsight pode utilizar um contentor de blobs no Armazenamento do Azure como o sistema de ficheiros predefinido para o cluster. Por meio de uma interface HDFS (sistema de arquivos distribuído) Hadoop fornecida por um driver WASB, o conjunto completo de componentes do HDInsight pode operar diretamente em dados estruturados ou não estruturados armazenados como blobs. O armazenamento de Blob do Azure também pode ser acessado por meio do Azure Synapse Analytics usando seu recurso PolyBase.
Outros recursos que tornam o Armazenamento do Azure uma boa escolha são:
- Múltiplas estratégias de simultaneidade.
- Opções de recuperação de desastres e alta disponibilidade.
- Encriptação em repouso.
- Controle de acesso baseado em função do Azure (Azure RBAC) para controlar o acesso usando usuários e grupos do Microsoft Entra.
Armazenamento do Azure Data Lake Ger1
O Azure Data Lake Storage Gen1 é um repositório de hiperescala em toda a empresa para cargas de trabalho analíticas de big data. O Data Lake permite capturar dados de qualquer tamanho, tipo e velocidade de ingestão em um único local seguro para análises operacionais e exploratórias.
O Azure Data Lake Storage Gen1 não impõe limites para tamanhos de contas, tamanhos de arquivos ou a quantidade de dados que podem ser armazenados em um data lake. Os dados são armazenados de forma durável fazendo várias cópias e não há limite para a duração do tempo em que os dados podem ser armazenados no Data Lake. Além de fazer várias cópias de arquivos para se proteger contra falhas inesperadas, o Data lake espalha partes de um arquivo por vários servidores de armazenamento individuais. Isto melhora o débito de leitura ao ler o ficheiro em paralelo para efetuar análise de dados.
O Azure Data Lake Storage Gen1 pode ser acessado do Hadoop (disponível por meio do HDInsight) usando as APIs REST compatíveis com WebHDFS. Você pode considerar usar isso como uma alternativa ao Armazenamento do Azure quando seus tamanhos de arquivo individuais ou combinados excederem os suportados pelo Armazenamento do Azure. No entanto, há diretrizes de ajuste de desempenho que você deve seguir ao usar o Azure Data Lake Storage Gen1 como seu armazenamento principal para um cluster HDInsight, com diretrizes específicas para Spark, Hive e MapReduce. Além disso, verifique a disponibilidade regional do Azure Data Lake Storage Gen1, pois ele não está disponível em tantas regiões quanto o Armazenamento do Azure e precisa estar localizado na mesma região do cluster HDInsight.
Juntamente com o Azure Data Lake Analytics, o Azure Data Lake Storage Gen1 foi projetado para habilitar a análise nos dados armazenados e é ajustado para desempenho em cenários de análise de dados. O Azure Data Lake Storage Gen1 também pode ser acessado por meio do Azure Synapse usando seu recurso PolyBase.
BD do Cosmos para o Azure
O Azure Cosmos DB é o banco de dados multimodelo distribuído globalmente da Microsoft. O Azure Cosmos DB garante latências de um dígito e milissegundos no percentil 99 em qualquer lugar do mundo, oferece vários modelos de consistência bem definidos para ajustar o desempenho e garante alta disponibilidade com recursos de vários homing.
O Azure Cosmos DB é independente do esquema. Ele indexa automaticamente todos os dados sem exigir que você lide com o gerenciamento de esquema e índice. Também é multimodelo, suportando nativamente modelos de dados de documentos, chave-valor, gráficos e famílias de colunas.
Recursos do Azure Cosmos DB:
- Georreplicação
- Dimensionamento elástico do débito e armazenamento a nível mundial
- Cinco níveis de consistência bem definidos.
HBase no HDInsight
O Apache HBase é um banco de dados NoSQL de código aberto que é construído no Hadoop e modelado de acordo com o Google BigTable. O HBase fornece acesso aleatório e forte consistência para grandes quantidades de dados não estruturados e semiestruturados em um banco de dados sem esquema organizado por famílias de colunas.
Os dados são armazenados nas linhas de uma tabela e os dados de uma linha são agrupados por família de colunas. O HBase não tem esquema no sentido de que nem as colunas nem o tipo de dados armazenados nelas precisam ser definidos antes de usá-las. O código open source é dimensionado linearmente para processar petabytes de dados em milhares de nós. Pode depender da redundância de dados, do processamento em lotes e de outras funcionalidades fornecidas por aplicações distribuídas do ecossistema do Hadoop.
A implementação do HDInsight aproveita a arquitetura de expansão do HBase para fornecer fragmentação automática de tabelas, forte consistência para leituras e gravações e failover automático. O desempenho é melhorado graças à colocação em cache dentro da memória para as operações de leitura e à transmissão em fluxo de alto débito para as operações de escrita. Na maioria dos casos, convém criar o cluster HBase dentro de uma rede virtual para que outros clusters e aplicativos HDInsight possam acessar diretamente as tabelas.
Azure Data Explorer
O Azure Data Explorer é um serviço de exploração de dados rápido e altamente escalável para dados de log e telemetria. Ele ajuda você a lidar com os muitos fluxos de dados emitidos pelo software moderno para que você possa coletar, armazenar e analisar dados. O Azure Data Explorer é ideal para analisar grandes volumes de dados diversificados provenientes de qualquer origem de dados, como sites, aplicações, dispositivos IoT e muito mais. Estes dados são utilizados para diagnóstico, monitorização, relatórios, aprendizagem automática e capacidades de análise adicionais. O Azure Data Explorer simplifica a ingestão desses dados e permite que você faça consultas ad hoc complexas nos dados em segundos.
O Azure Data Explorer pode ser expandido linearmente para aumentar a taxa de transferência de ingestão e processamento de consultas. Um cluster do Azure Data Explorer pode ser implantado em uma Rede Virtual para habilitar redes privadas.
Principais critérios de seleção
Para restringir as escolhas, comece por responder a estas perguntas:
Você precisa de armazenamento gerenciado, de alta velocidade e baseado em nuvem para qualquer tipo de texto ou dados binários? Se sim, selecione uma das opções de armazenamento de arquivos ou análise.
Você precisa de armazenamento de arquivos otimizado para cargas de trabalho de análise paralela e alta taxa de transferência/IOPS? Se sim, escolha uma opção ajustada ao desempenho da carga de trabalho de análise.
Você precisa armazenar dados não estruturados ou semiestruturados em um banco de dados sem esquema? Em caso afirmativo, selecione uma das opções não relacionais ou analíticas. Compare opções para indexação e modelos de banco de dados. Dependendo do tipo de dados que você precisa armazenar, os modelos de banco de dados primários podem ser o maior fator.
Você pode usar o serviço na sua região? Verifique a disponibilidade regional para cada serviço do Azure. Veja Produtos disponíveis por região.
Matriz de capacidades
As tabelas a seguir resumem as principais diferenças nos recursos.
Recursos de armazenamento de arquivos
Funcionalidade | Armazenamento do Azure Data Lake Ger1 | Contêineres de Armazenamento de Blob do Azure |
---|---|---|
Propósito | Armazenamento otimizado para cargas de trabalho de análise de big data | Armazenamento de objetos de uso geral para uma ampla variedade de cenários de armazenamento |
Casos de utilização | Batch, análise de streaming e dados de aprendizado de máquina, como arquivos de log, dados de IoT, fluxos de cliques, grandes conjuntos de dados | Qualquer tipo de texto ou dados binários, como back-end de aplicativo, dados de backup, armazenamento de mídia para streaming e dados de uso geral |
Estrutura | Sistema de arquivos hierárquico | Armazenamento de objetos com namespace simples |
Autenticação | Baseado em identidades Microsoft Entra | Com base em segredos partilhados, Chaves de Acesso à Conta e Chaves de Assinatura de Acesso Partilhado e controlo de acesso baseado na função do Azure (Azure RBAC) |
Protocolo de autenticação | OAuth 2.0. As chamadas devem conter um JWT (token da Web JSON) válido emitido pelo Microsoft Entra ID | Código de autenticação de mensagens baseado em hash (HMAC). As chamadas têm de conter um hash SHA-256 codificado com Base64 numa parte do pedido HTTP. |
Autorização | Listas de controle de acesso (ACLs) POSIX. As ACLs baseadas em identidades do Microsoft Entra podem ser definidas no nível de arquivo e pasta. | Para autorização no nível da conta, use as chaves de acesso da conta. Para autorização de conta, contêiner ou blob, use Chaves de Assinatura de Acesso Compartilhado. |
Auditoria | Disponível. | Disponíveis |
Encriptação inativa | Transparente, do lado do servidor | Transparente, do lado do servidor; Criptografia do lado do cliente |
SDKs de desenvolvedor | .NET, Java, Python, Nó.js | .NET, Java, Python, Node.js, C++, Ruby |
Desempenho da carga de trabalho do Analytics | Desempenho otimizado para cargas de trabalho de análise paralela, alta taxa de transferência e IOPS | Não otimizado para cargas de trabalho de análise |
Limites de tamanho | Sem limites de tamanho de conta, tamanho de arquivo ou número de arquivos | Limites específicos documentados aqui |
Georredundância | Localmente redundante (LRS), globalmente redundante (GRS), acesso de leitura globalmente redundante (RA-GRS), zona redundante (ZRS). | Localmente redundante (LRS), globalmente redundante (GRS), acesso de leitura globalmente redundante (RA-GRS), zona redundante (ZRS). Veja aqui para obter mais informações |
Recursos de banco de dados NoSQL
Funcionalidade | BD do Cosmos para o Azure | HBase no HDInsight |
---|---|---|
Modelo de banco de dados primário | Armazenamento de documentos, gráfico, armazenamento de chave-valor, armazenamento de colunas amplas | Armazenamento de coluna ampla |
Índices secundários | Sim | No |
Suporte à linguagem SQL | Sim | Sim (usando o driver JDBC Phoenix) |
Consistência | Forte, delimitado, sessão, prefixo consistente, eventual | Forte |
Integração nativa do Azure Functions | Sim | No |
Distribuição global automática | Sim | Nenhumareplicação de cluster HBase pode ser configurada entre regiões com consistência eventual |
Modelo de preços | Unidades de solicitação elasticamente escaláveis (RUs) carregadas por segundo, conforme necessário, armazenamento elasticamente escalável | Preços por minuto para cluster HDInsight (dimensionamento horizontal de nós), armazenamento |
Recursos de banco de dados analítico
Funcionalidade | Azure Data Explorer |
---|---|
Modelo de banco de dados primário | Relational (armazenamento de coluna), telemetria e armazenamento de séries temporais |
Suporte à linguagem SQL | Sim |
Modelo de preços | Instâncias de cluster elasticamente escaláveis |
Autenticação | Baseado em identidades Microsoft Entra |
Encriptação inativa | Chaves suportadas e geridas pelo cliente |
Desempenho da carga de trabalho do Analytics | Desempenho otimizado para cargas de trabalho de análise paralela |
Limites de tamanho | Quase escalável |
Contribuidores
Este artigo é mantido pela Microsoft. Foi originalmente escrito pelos seguintes contribuidores.
Autor principal:
- Zoiner Tejada - Brasil | CEO e Arquiteto
Próximos passos
- Soluções e Serviços de Armazenamento em Nuvem do Azure
- Rever as opções de armazenamento
- Introdução ao Armazenamento do Azure
- Introdução ao Azure Data Explorer
Recursos relacionados
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários