Análises de ponta a ponta com o Azure Synapse

Azure Synapse Analytics
Azure Cosmos DB
Fábrica de dados do Azure
Azure Databricks
Hubs de eventos do Azure

A solução descrita neste artigo combina uma variedade de serviços do Azure que vão ingerir, armazenar, processar, enriquecer e fornecer dados e insights de diferentes fontes (estruturadas, semiestruturadas, não estruturadas e streaming).

Arquitetura

Diagrama de arquitetura para uma plataforma de dados moderna usando os serviços de dados do Azure.

Baixe um Arquivo Visio dessa arquitetura.

Observação

  • Os serviços cobertos por essa arquitetura são apenas um subconjunto de uma família muito maior de serviços do Azure. Obtenha resultados semelhantes usando outros serviços ou recursos que não são cobertos por esse design.
  • Os requisitos de negócios específicos para seu caso de uso de análise podem exigir o uso de diferentes serviços ou recursos que não são considerados nesse design.

Fluxo de dados

Os casos de uso de análise cobertos pela arquitetura são ilustrados pelas diferentes fontes de dados no lado esquerdo do diagrama. Os dados fluem pela solução de baixo para cima da seguinte maneira:

Observação

Nas seções a seguir, o Azure Data Lake é usado como a página inicial de dados em vários estágios do ciclo de vida dos dados. O Azure Data Lake é organizado por diferentes camadas e contêineres da seguinte maneira:

  • A camada Bruta é a área de aterrissagem de dados provenientes dos sistemas de origem. Como o nome indica, os dados nessa camada estão em forma bruta, não filtrada e não corrigida.
  • No próximo estágio do ciclo de vida, os dados são movidos para a camada Enriquecida em que os dados são limpos, filtrados e possivelmente transformados.
  • Em seguida, os dados são movidos para a camada Curada, que é onde os dados prontos para o consumidor são mantidos.

Consulte a documentação das zonas e contêineres do Data Lake para obter uma revisão completa das camadas e contêineres do Azure Data Lake e seus usos.

Serviços de dados do Azure, HTAP nativo da nuvem com o Azure Cosmos DB e o Dataverse

Processar
  1. O Link do Azure Synapse para Azure Cosmos DB e o Link do Azure Synapse para Dataverse permitem que você execute análises quase em tempo real em dados de aplicativos operacionais e de negócios, usando os mecanismos de análise disponíveis no seu workspace do Azure Synapse: SQL sem servidor e Pools do Spark.

  2. Ao usar o Link do Azure Synapse para Azure Cosmos DB, use uma Consulta do SQL Sem Servidor ou um Notebook do Pool do Spark. Você pode acessar o Repositório analítico do Azure Cosmos DB e combinar conjuntos de dados dos seus dados operacionais quase em tempo real com os dados do Data Lake ou do Data Warehouse.

  3. Ao usar o Link do Azure Synapse para Dataverse, use uma consulta SQL sem servidor ou um notebook do Pool do Spark. Acesse as tabelas do Dataverse selecionadas e combine conjuntos de dados dos dados de aplicativos de negócios quase em tempo real com os dados do data lake ou do data warehouse.

Repositório
  1. Os conjuntos de dados resultantes das consultas SQL sem servidor podem ser persistidos no data lake. Se você estiver usando notebooks do Spark, os conjuntos de dados resultantes poderão ser persistidos no data lake ou no data warehouse (pool de SQL).
Serve
  1. Carregue dados relevantes do pool de SQL do Azure Synapse ou do data lake em conjuntos de dados do Power BI para visualização e exploração de dados. Os modelos do Power BI implementam um modelo semântico para simplificar a análise de dados de negócios e relações. Os analistas de negócios usam os relatórios e os dashboards do Power BI para analisar dados e gerar insights de negócios.

  2. Os dados também podem ser compartilhados com segurança com outras unidades de negócios ou parceiros confiáveis externos por meio do Azure Data Share. Os consumidores de dados têm a liberdade de escolher o formato de dados que desejam usar e o mecanismo de computação que acham melhor para processar conjuntos de dados compartilhados.

  3. Os dados estruturados e não estruturados armazenados no seu workspace do Azure Synapse também podem ser usados para criar soluções de mineração de conhecimento e usar a IA para descobrir insights valiosos de negócios em diferentes tipos e formatos de documentos, incluindo documentos do Office, PDFs, imagens, áudio, formulários e páginas da Web.

Bancos de dados relacionais

Ingerir
  1. Use os pipelines do Azure Synapse para extrair dados de uma ampla variedade de bancos de dados, no local e na nuvem. Os pipelines podem ser disparados de acordo com um agendamento predefinido, em resposta a um evento ou ser chamados explicitamente por meio de APIs REST.
Repositório
  1. Na camada Bruta do Data Lake, organize seu Data Lake seguindo as práticas recomendadas em torno de quais camadas criar, quais estruturas de pastas usar em cada camada e qual formato de arquivos usar em cada cenário de análise.

  2. No pipeline do Azure Synapse, use uma atividade Copiar dados para preparar os dados copiados dos bancos de dados relacionais na camada bruta do seu Data Lake do Azure Data Lake Store Gen 2. Salve os dados em formato de texto delimitado ou compactados como arquivos Parquet.

Processar
  1. Use os fluxos de dados, consultas sem servidor do SQLou blocos de anotações do Spark para validar, transformar e mover os conjuntos de dados da camada Bruta pela camada Enriquecida e na sua camada Curada no seu Data Lake.

    1. Como parte das suas transformações de dados, você pode invocar modelos de machine learning dos pools de SQL usando o T-SQL padrão ou os notebooks do Spark. Esses modelos de ML podem ser usados para enriquecer os conjuntos de dados e gerar mais insights de negócios. Os modelos de machine learning podem ser consumidos nos Serviços Cognitivos do Azure ou nos modelos de ML personalizados do Azure ML.
Serve
  1. Você pode servir seu conjunto de dados final diretamente da camada do data lake Curated ou pode usar a atividade Copiar Dados para ingerir o conjunto de dados final em suas tabelas do pool de SQL usando o comando COPY para ingestão rápida.

  2. Carregue dados relevantes do pool de SQL do Azure Synapse ou do data lake em conjuntos de dados do Power BI para visualização de dados. Os modelos do Power BI implementam um modelo semântico para simplificar a análise de dados de negócios e relações. Os analistas de negócios usam os relatórios e os dashboards do Power BI para analisar dados e gerar insights de negócios.

  3. Os dados também podem ser compartilhados com segurança com outras unidades de negócios ou parceiros confiáveis externos por meio do Azure Data Share. Os consumidores de dados têm a liberdade de escolher o formato de dados que desejam usar e o mecanismo de computação que acham melhor para processar conjuntos de dados compartilhados.

  4. Os dados estruturados e não estruturados armazenados no seu workspace do Azure Synapse também podem ser usados para criar soluções de mineração de conhecimento e usar a IA para descobrir insights valiosos de negócios em diferentes tipos e formatos de documentos, incluindo documentos do Office, PDFs, imagens, áudio, formulários e páginas da Web.

Fontes de dados semiestruturadas

Ingerir
  1. Use os pipelines do Azure Synapse para extrair dados de uma ampla variedade de fontes de dados semiestruturadas, no local e na nuvem. Por exemplo:

    • Ingira dados de fontes baseadas em arquivo que contenham arquivos CSV ou JSON.
    • Conecte-se aos bancos de dados Sem SQL, como o Cosmos DB ou o Mongo DB.
    • Chame APIs REST fornecidas por aplicativos SaaS que funcionarão como a fonte de dados para o pipeline.
Repositório
  1. Na camada Bruta do Data Lake, organize seu Data Lake seguindo as práticas recomendadas em torno de quais camadas criar, quais estruturas de pastas usar em cada camada e qual formato de arquivos usar em cada cenário de análise.

  2. No pipeline do Azure Synapse, use uma atividade Copiar dados para preparar os dados copiados das fontes de dados semiestruturadas na camada bruta do seu Data Lake do Azure Data Lake Store Gen2. Salve os dados para preservar o formato original, conforme adquirido das fontes de dados.

Processar
  1. Nos pipelines nos lotes/microlotes, use os fluxos de dados, consultas sem servidor SQL ou notebooks do Spark para validar, transformar e mover seus conjuntos de dados na sua camada curada no seu Data Lake. As consultas SQL sem servidor expõem arquivos CSV, Parquet ou JSON subjacentes como tabelas externas, de modo que eles possam ser consultados por meio do T-SQL.

    1. Como parte das suas transformações de dados, você pode invocar modelos de machine learning dos pools de SQL usando o T-SQL padrão ou os notebooks do Spark. Esses modelos de ML podem ser usados para enriquecer os conjuntos de dados e gerar mais insights de negócios. Os modelos de machine learning podem ser consumidos nos Serviços Cognitivos do Azure ou nos modelos de ML personalizados do Azure ML.
  2. Para cenários de telemetria quase em tempo real e análise de série temporal, use os pools do Data Explorer para ingerir, consolidar e correlacionar com facilidade os logs e os dados de eventos de IoT de várias fontes de dados. Com os pools do Data Explorer, use consultas KQL (Kusto) para realizar a análise de série temporal, o clustering geoespacial e o enriquecimento de machine learning.

Serve
  1. Você pode servir seu conjunto de dados final diretamente da camada do data lake Curated ou pode usar a atividade Copiar Dados para ingerir o conjunto de dados final em suas tabelas do pool de SQL usando o comando COPY para ingestão rápida.

  2. Carregue dados relevantes dos pools de SQL do Azure Synapse, dos pools do Data Explorer ou de um data lake em conjuntos de dados do Power BI para visualização de dados. Os modelos do Power BI implementam um modelo semântico para simplificar a análise de dados de negócios e relações. Os analistas de negócios usam os relatórios e os dashboards do Power BI para analisar dados e gerar insights de negócios.

  3. Os dados também podem ser compartilhados com segurança com outras unidades de negócios ou parceiros confiáveis externos por meio do Azure Data Share. Os consumidores de dados têm a liberdade de escolher o formato de dados que desejam usar e o mecanismo de computação que acham melhor para processar conjuntos de dados compartilhados.

  4. Os dados estruturados e não estruturados armazenados no seu workspace do Azure Synapse também podem ser usados para criar soluções de mineração de conhecimento e usar a IA para descobrir insights valiosos de negócios em diferentes tipos e formatos de documentos, incluindo documentos do Office, PDFs, imagens, áudio, formulários e páginas da Web.

Fontes de dados não estruturadas

Ingerir
  1. Use os pipelines do Azure Synapse para extrair dados de uma ampla variedade de fontes de dados não estruturadas, no local e na nuvem. Por exemplo:

    • Ingira vídeo, imagem, áudio ou texto livre de fontes baseadas em arquivo que contêm os arquivos de origem.
    • Chame APIs REST fornecidas por aplicativos SaaS que funcionarão como a fonte de dados para o pipeline.
Repositório
  1. Na camada Bruta do Data Lake, organize seu Data Lake seguindo as práticas recomendadas sobre quais camadas criar, quais estruturas de pastas usar em cada camada e qual formato de arquivos usar em cada cenário de análise.

  2. No pipeline do Azure Synapse, use uma atividade Copiar dados para preparar os dados copiados das fontes de dados não estruturadas para a zona bruta do data lake do Azure Data Lake Store Gen2. Salve os dados preservando o formato original, conforme adquirido das fontes de dados.

Processar
  1. Use os notebooks do Spark para validar, transformar, enriquecer e mover seus conjuntos de dados da camada Bruta pela camada Enriquecida e para a camada Curada no seu Data Lake.

    1. Como parte das suas transformações de dados, você pode invocar modelos de machine learning dos pools de SQL usando o T-SQL padrão ou os notebooks do Spark. Esses modelos de ML podem ser usados para enriquecer os conjuntos de dados e gerar mais insights de negócios. Os modelos de machine learning podem ser consumidos nos Serviços Cognitivos do Azure ou nos modelos de ML personalizados do Azure ML.
Serve
  1. Você pode servir seu conjunto de dados final diretamente da camada do Data Lake Curada ou pode usar a atividade Copiar Dados para ingerir o conjunto de dados final nas suas tabelas do Data Warehouse usando o comando COPIAR para ingestão rápida.

  2. Carregue dados relevantes do pool de SQL do Azure Synapse ou do data lake em conjuntos de dados do Power BI para visualização de dados. Os modelos do Power BI implementam um modelo semântico para simplificar a análise de dados de negócios e relações.

  3. Os analistas de negócios usam os relatórios e os dashboards do Power BI para analisar dados e gerar insights de negócios.

  4. Os dados também podem ser compartilhados com segurança com outras unidades de negócios ou parceiros confiáveis externos por meio do Azure Data Share. Os consumidores de dados têm a liberdade de escolher o formato de dados que desejam usar e o mecanismo de computação que acham melhor para processar conjuntos de dados compartilhados.

  5. Os dados estruturados e não estruturados armazenados no seu workspace do Azure Synapse também podem ser usados para criar soluções de mineração de conhecimento e usar a IA para descobrir insights valiosos de negócios em diferentes tipos e formatos de documentos, incluindo documentos do Office, PDFs, imagens, áudio, formulários e páginas da Web.

Streaming

Ingerir
  1. Use os Hubs de Eventos do Azure ou os Hubs IoT do Azure para ingerir fluxos de dados gerados por aplicativos cliente ou dispositivos IoT. Em seguida, os Hubs de Eventos ou o Hub IoT vão ingerir e armazenar os dados de streaming preservando a sequência de eventos recebidos. Depois, os consumidores podem se conectar aos pontos de extremidade dos Hubs de Eventos ou do Hub IoT e recuperar mensagens para processamento.
Repositório
  1. Na camada Bruta do Data Lake, organize seu Data Lake seguindo as práticas recomendadas em torno de quais camadas criar, quais estruturas de pastas usar em cada camada e qual formato de arquivos usar em cada cenário de análise.

  2. Configure a Captura dos Hubs de Eventos ou Pontos de Extremidade de Armazenamento do Hub IoT para salvar uma cópia dos eventos na Camada bruta no Data Lake da sua Azure Data Lake Store Gen 2. Esse recurso implementa o "caminho frio" do padrão de arquitetura Lambda e permite que você execute a análise histórica e de tendências nos dados de fluxo salvos no data lake usando consultas SQL sem servidor ou notebooks do Spark seguindo o padrão para fontes de dados semiestruturadas descrito acima.

Processar
  1. Para insights em tempo real, use um trabalho do Stream Analytics para implementar o "caminho crítico" do padrão de arquitetura Lambda e obter insights dos dados de fluxo em trânsito. Defina, pelo menos, uma entrada para o fluxo de dados proveniente dos Hubs de Eventos ou do Hub IoT, uma consulta para processar o fluxo de dados de entrada e uma saída do Power BI para a qual os resultados da consulta serão enviados.

    1. Como parte do processamento de dados com o Stream Analytics, você pode invocar modelos de machine learning para enriquecer os conjuntos de dados de fluxo e orientar as decisões de negócios com base nas previsões geradas. Esses modelos de machine learning podem ser consumidos nos Serviços Cognitivos do Azure ou nos modelos de ML personalizados do Azure Machine Learning.
  2. Use outras saídas de trabalho do Stream Analytics para enviar os eventos processados para pools de SQL do Azure Synapse ou pools do Data Explorer para casos de uso de análise posteriores.

  3. Para cenários de telemetria e análise de série temporal quase em tempo real, use pools do Data Explorer para ingerir eventos de IoT com facilidade diretamente dos Hubs de Eventos ou dos Hubs IoT. Com os pools do Data Explorer, use consultas KQL (Kusto) para realizar a análise de série temporal, o clustering geoespacial e o enriquecimento de machine learning.

Serve
  1. Em seguida, os analistas de negócios usam as funcionalidades de dashboard e conjuntos de dados do Power BI em tempo real para visualizar os insights em rápida mudança gerados pela consulta do Stream Analytics.

  2. Os dados também podem ser compartilhados com segurança com outras unidades de negócios ou parceiros confiáveis externos por meio do Azure Data Share. Os consumidores de dados têm a liberdade de escolher o formato de dados que desejam usar e o mecanismo de computação que acham melhor para processar conjuntos de dados compartilhados.

  3. Os dados estruturados e não estruturados armazenados no seu workspace do Azure Synapse também podem ser usados para criar soluções de mineração de conhecimento e usar a IA para descobrir insights valiosos de negócios em diferentes tipos e formatos de documentos, incluindo documentos do Office, PDFs, imagens, áudio, formulários e páginas da Web.

Componentes

Os seguintes serviços do Azure foram usados na arquitetura:

Alternativas

Detalhes do cenário

Este cenário de exemplo demonstra como usar o Azure Synapse Analytics com a ampla família dos Serviços de Dados do Azure para criar uma plataforma de dados moderna que pode lidar com os desafios de dados mais comuns de uma organização.

Possíveis casos de uso

Essa abordagem também pode ser usada para:

  • Estabelecer uma arquitetura de produto de dados, que consiste em um data warehouse para dados estruturados e um data lake para dados semiestruturados e não estruturados. Você pode optar por implantar um só produto de dados para ambientes centralizados ou vários produtos de dados para ambientes distribuídos, como malha de dados. Confira mais informações sobre o gerenciamento de dados e as zonas de destino de dados.
  • Integrar fontes de dados relacionais a outros conjuntos de dados não estruturados, com o uso de tecnologias de processamento de Big Data.
  • Use a modelagem semântica e as ferramentas de visualização poderosas para uma análise de dados mais simples.
  • Compartilhar conjuntos de dados na organização ou com parceiros externos confiáveis.
  • Implementar soluções de mineração de conhecimento para extrair informações comerciais valiosas, ocultas em imagens, PDFs, documentos etc.

Recomendações

Descoberta e governança

A governança de dados é um desafio comum em ambientes de grandes empresas. Por um lado, os analistas de negócios precisam conseguir descobrir e entender os ativos de dados que podem ajudá-los a resolver problemas de negócios. Por outro lado, os diretores de dados querem obter insights sobre a privacidade e a segurança dos dados de negócios.

Microsoft Purview

  1. Use o Microsoft Purview da descoberta de dados e os insights nos seus ativos de dados, classificação de dados e confidencialidade, que abrange todo o cenário dos dados organizacionais.

  2. O Microsoft Purview pode ajudá-lo a manter um glossário de negócios com a terminologia de negócios específica necessária para que os usuários entendam a semântica do que os conjuntos de dados significam e como eles devem ser usados na organização.

  3. Você pode registrar todas as fontes de dados e organizá-las em Coleções, o que também serve como um limite de segurança para seus metadados.

  4. Configure verificações regulares para catalogar e atualizar automaticamente os metadados relevantes sobre os ativos de dados na organização. O Microsoft Purview também pode adicionar automaticamente as informações da linhagem de dados com base nas informações do Azure Data Factory ou dos pipelines do Azure Synapse.

  5. Os rótulos de classificação de dados e de confidencialidade de dados podem ser adicionados automaticamente aos seus ativos de dados com base em regras pré-configuradas ou personalizadas durante as verificações regulares.

  6. Os profissionais da governança de dados podem usar os relatórios e os insights gerados pelo Microsoft Purview para manter o controle sobre todo o cenário de dados e proteger a organização contra problemas de segurança e privacidade.

Serviços de plataforma

Para aprimorar a qualidade das suas soluções do Azure, siga as recomendações e as diretrizes definidas nos cinco pilares de excelência em arquitetura: Otimização de Custos, Excelência Operacional, Eficiência de Desempenho, Confiabilidade e Segurança do Azure Well-Architected Framework.

Seguindo estas recomendações, os serviços abaixo devem ser considerados como parte do design:

  1. ID do Microsoft Entra: serviços de identidade, logon único e autenticação multifator entre cargas de trabalho do Azure.
  2. Gerenciamento de Custos do Azure: governança financeira sobre suas cargas de trabalho do Azure.
  3. Azure Key Vault: proteja o gerenciamento de credenciais e certificados. Por exemplo, os pipelines do Azure Synapse, os pools do Spark do Azure Synapse e o Azure ML podem recuperar credenciais e certificados do Azure Key Vault usados para acessar armazenamentos de dados com segurança.
  4. Azure Monitor: coletar, analisar e tomar decisões com base em informações de telemetria dos seus recursos do Azure para identificar problemas de maneira proativa e maximizar o desempenho e a confiabilidade.
  5. Microsoft Defender para Nuvem: fortalecer e monitorar a postura de segurança das suas cargas de trabalho do Azure.
  6. Azure DevOps & GitHub: implemente práticas de DevOps para impor automação e conformidade aos pipelines de desenvolvimento e implantação de sua carga de trabalho para o Azure Synapse e o Azure ML.
  7. Azure Policy: implemente padrões organizacionais e governança para consistência de recursos, conformidade regulatória, segurança, custo e gerenciamento.

Considerações

Essas considerações implementam os pilares do Azure Well-Architected Framework, que é um conjunto de princípios de orientação que podem ser usados para aprimorar a qualidade de uma carga de trabalho. Para obter mais informações, confira Microsoft Azure Well-Architected Framework.

As tecnologias nessa arquitetura foram escolhidas porque cada uma delas fornece a funcionalidade necessária para lidar com os desafios de dados mais comuns de uma organização. Esses serviços atendem aos requisitos de escalabilidade e disponibilidade, ajudando a controlar os custos. Os serviços cobertos por essa arquitetura são apenas um subconjunto de uma família muito maior de serviços do Azure. Obtenha resultados semelhantes usando outros serviços ou recursos não cobertos por esse design.

Os requisitos de negócios específicos para seu caso de uso de análise também podem exigir o uso de diferentes serviços ou recursos que não são considerados nesse design.

Uma arquitetura semelhante também pode ser implementada para ambientes de pré-produção em que você pode desenvolver e testar as cargas de trabalho. Considere os requisitos específicos para suas cargas de trabalho e as funcionalidades de cada serviço para obter um ambiente de pré-produção econômico.

Otimização de custo

A otimização de custos é a análise de maneiras de reduzir as despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, confira Visão geral do pilar de otimização de custo.

Em geral, use a calculadora de preços do Azure para estimar os custos. O tipo de preço individual ideal e o custo geral total de cada serviço incluído na arquitetura dependem do volume de dados a ser processado e armazenado e do nível de desempenho aceitável esperado. Use o guia abaixo para saber mais sobre como o preço de cada serviço é definido:

  • A arquitetura sem servidor do Azure Synapse Analytics permite escalar seus níveis de computação e armazenamento de maneira independente. Os recursos de computação são cobrados com base no uso, e você pode escalar ou pausar esses recursos sob demanda. Os recursos de armazenamento são cobrados por terabyte, assim seus custos aumentam à medida que você insere mais dados.

  • O Azure Data Lake Gen2 é cobrado com base no volume de dados armazenado e no número de transações necessário para ler e gravar os dados.

  • Os Hubs de Eventos do Azure e os Hubs IoT do Azure são cobrados com base na quantidade de recursos de computação necessários para processar os fluxos de mensagens.

  • Os custos do Azure Machine Learning são provenientes da quantidade de recursos de computação usados para treinar e implantar os modelos de machine learning.

  • Os Serviços Cognitivos são cobrados com base no número de chamadas feitas às APIs de serviço.

  • O Microsoft Purview é precificado com base no número de ativos de dados no catálogo e na quantidade de energia de computação necessária para examiná-los.

  • O Azure Stream Analytics é cobrada com base na quantidade de poder de computação necessária para processar as consultas de fluxo.

  • O Power BI tem diferentes opções de produto para diversos requisitos. O Power BI Embedded fornece uma opção baseada no Azure para incorporar a funcionalidade do Power BI em seus aplicativos. Uma instância do Power BI Embedded está incluída no exemplo de preço acima.

  • O Azure Cosmos DB é cobrado com base na quantidade de recursos de armazenamento e de computação exigidos pelos seus bancos de dados.

Implantar este cenário

Esse acelerador de implantação oferece a opção de implementar toda a arquitetura de referência ou escolher as cargas de trabalho de que você precisa para seu caso de uso de análise. Você também tem a opção de escolher se os serviços podem ser acessados por meio de pontos de extremidade públicos ou se só devem ser acessados por meio de pontos de extremidade privados.

Use o botão a seguir para implantar a referência usando o portal do Azure.

Implantar no Azure

Para obter informações detalhadas e mais opções de implantação, confira o repositório do GitHub do acelerador de implantação com a documentação e o código usados para definir essa solução.

Colaboradores

Este artigo está sendo atualizado e mantido pela Microsoft. Ele foi originalmente escrito pelos colaboradores a seguir.

Autor principal:

Para ver perfis não públicos do LinkedIn, entre no LinkedIn.

Próximas etapas