Ideias de soluções
Esse artigo é uma ideia de solução. Caso deseje que ampliemos o conteúdo com mais informações, como possíveis casos de uso, serviços alternativos, considerações sobre implementação ou diretrizes de preços, fale conosco enviando seus comentários no GitHub.
O padrão de data warehouse lógico (LDW) coloca uma camada relacional virtualizada leve sobre os dados armazenados em um data lake ou banco de dados. Essa camada de virtualização fornece acesso ao data warehouse sem exigir a movimentação de dados. Essa solução pode combinar dados OLTP (processamento de transações on-line) com dados analíticos de data lakes para uma maneira de baixa complexidade e baixa latência para atender cargas de trabalho de business intelligence (BI) e análise.
Apache Spark™ é uma marca registrada ou marca comercial da Apache Software Foundation nos Estados Unidos e/ou em outros países/regiões. O uso dessa marca não implica aprovação por parte da Apache Software Foundation.
Arquitetura
Baixe um arquivo do PowerPoint de todos os diagramas neste artigo.
Fluxo de dados
O Azure Data Factory integra dados de sistemas de origem ao data lake corporativo.
Os dados do dispositivo e do sensor também são transmitidos de dispositivos de borda para a nuvem por meio do Hub IoT do Azure. O Azure Stream Analytics processa os dados e os envia para o data lake corporativo.
Os pools SQL sem servidor do Azure Synapse definem um LDW que tem tabelas lógicas e exibições acessíveis por meio do ponto de extremidade sob demanda do pool SQL sem servidor do espaço de trabalho do Azure Synapse.
O Azure Synapse Link para Azure Cosmos DB consulta dados transacionais em tempo real por meio dos pools SQL sem servidor do Azure Synapse. Esses dados se unem aos dados de cold batch e hot streaming do data lake corporativo para criar exibições lógicas.
Relatórios, BI e outros aplicativos de análise acessam dados e exibições LDW usando o ponto de extremidade SQL sem servidor do espaço de trabalho do Azure Synapse.
Observação
O ponto de extremidade SQL sem servidor do espaço de trabalho do Azure Synapse pode ser acessado de qualquer ferramenta ou serviço que ofereça suporte a conexões TDS (Tabular Data Stream) com o SQL Server.
Componentes
- O Azure Synapse Analytics é um serviço de análise ilimitado que reúne integração de dados, armazenamento de dados corporativos e análise de Big Data.
- Os pools de SQL do Azure Synapse sem servidor consultam lagos de dados usando T-SQL e pontos de extremidade sob demanda SQL sem servidor.
- O Azure Synapse Link para Azure Cosmos DB consulta dados OLTP do Azure Cosmos DB usando pools SQL sem servidor do Azure Synapse.
- O Data Factory oferece integração de dados em escala de nuvem e orquestração de fluxo de dados.
- O Hub IoT permite a comunicação segura e confiável entre aplicativos e dispositivos da Internet das Coisas (IoT).
- O Stream Analytics fornece pipelines de análise de streaming sem servidor e em tempo real.
- O Azure Data Lake Storage oferece armazenamento em nuvem escalonável e econômico.
- O Azure Cosmos DB é um banco de dados NoSQL totalmente gerenciado para o desenvolvimento de aplicativos modernos.
Detalhes do cenário
Usando um LDW com pools SQL sem servidor do Azure Synapse, você pode unir dados de lote frio, dados de fluxo ativo e dados transacionais ao vivo em uma única consulta T-SQL ou definição de exibição.
Essa solução evita a movimentação de dados por meio de pipelines complexos, caros e propensos a latência de extração, transformação e carga (ETL). O conceito LDW é semelhante a um data lakehouse, mas o LDW com o Azure Synapse Analytics inclui suporte para processamento analítico/de transação híbrida (HTAP). O HTAP usa pools SQL sem servidor do Azure Synapse para consultar dados OLTP armazenados no Azure Cosmos DB.
Um LDW do Azure Synapse Analytics é baseado em pools SQL sem servidor que estão disponíveis com todos os espaços de trabalho do Azure Synapse. Uma versão aprimorada da função OPENROWSET permite que pools SQL sem servidor acessem dados no Armazenamento Data Lake.
Esse acesso a dados permite a criação de objetos de banco de dados relacionais, como tabelas e exibições sobre coleções de arquivos de dados que representam entidades lógicas, como produtos, clientes e transações de vendas. As ferramentas de BI que se conectam usando um ponto de extremidade padrão do SQL Server podem consumir essas entidades lógicas como tabelas de dimensões e fatos.
A capacidade de acessar armazenamentos de dados transacionais como o Azure Cosmos DB por meio do Azure Synapse Link para Azure Cosmos DB expande esses recursos. O acesso a dados OLTP usando a arquitetura HTAP fornece atualizações instantâneas sem interferir nas transações em tempo real.
Cada espaço de trabalho do Azure Synapse inclui um ponto de extremidade SQL sob demanda. O ponto de extremidade permite que administradores e desenvolvedores do SQL Server usem ambientes familiares para trabalhar com LDWs definidos por pools de SQL sem servidor do Azure Synapse.
A captura de tela a seguir mostra o SQL Server Management Studio (SSMS) conectado a um pool de SQL sem servidor do Azure Synapse.
Os pools de SQL sem servidor do Azure Synapse oferecem suporte aos seguintes formatos de arquivo:
- Texto delimitado, como CSV, TSV e TXT
- JSON
- Parquet
Os pools SQL sem servidor do Azure Synapse também oferecem suporte ao formato Delta Lake . Esse suporte permite que padrões como enriquecimento no Spark, sirvam com SQL, onde serviços do Apache Spark™, como o Azure Databricks ou pools do Apache Spark no Azure Synapse, projetem dados para criar conjuntos de dados curados no data lake. Em vez de ter que carregar esses conjuntos de dados em um data warehouse físico, você pode definir um LDW sobre o data lake para fornecer a camada de modelo/serviço para relatórios.
O LDW com pools SQL sem servidor do Azure Synapse é uma implementação do padrão Data Lakehouse . Usar o Databricks SQL para implementar um LDW é uma solução alternativa. No entanto, o Databricks SQL não possui o recurso HTAP do Azure Synapse Link para Cosmos DB.
Possíveis casos de uso
Esse padrão não é útil para os seguintes casos:
- Camada de serviço de data warehouse para BI e outros casos de uso analíticos.
- Exploração ad-hoc de dados brutos em um data lake.
- Streaming de dados econômico em um data lake que não requer seus próprios recursos de computação para gravar dados. Uma tabela de banco de dados lógico, exibição ou consulta T-SQL ad-hoc pode acessar os dados instantaneamente a partir do data lake.
- Acesso instantâneo aos dados transacionais do Azure Cosmos DB para criar pipelines de agregação em tempo real ou ingressar com dados analíticos armazenados no data lake.
Colaboradores
Esse artigo é mantido pela Microsoft. Ele foi originalmente escrito pelos colaboradores a seguir.
Autor principal:
- Jon Dobrzeniecki | Arquiteto de Soluções em Nuvem Sênior
Para ver perfis não públicos do LinkedIn, entre no LinkedIn.
Próximas etapas
- Consultar os arquivos de armazenamento com o pool de SQL sem servidor no Azure Synapse Analytics
- Tutorial: Criar um data warehouse lógico com o pool de SQL sem servidor
- O que é o Link do Azure Synapse para Azure Cosmos DB?
- POLARIS: O mecanismo SQL distribuído no Azure Synapse
- O que é o Delta Lake?