Guia de decisão do Microsoft Fabric: atividade de cópia, fluxo de dados ou Spark
Use este guia de referência e os cenários de exemplo para ajudá-lo a decidir se precisa de uma atividade de cópia, um fluxo de dados ou o Spark para suas cargas de trabalho do Microsoft Fabric.
Copiar atividade, fluxo de dados e propriedades do Spark
Atividade de cópia de pipeline | Dataflow Gen 2 | Spark | |
---|---|---|---|
Caso de uso | Migração de lago de dados e armazém de dados, ingestão de dados, transformação leve |
Ingestão de dados, transformação de dados, disputa de dados, definição de perfis de dados |
Ingestão de dados, transformação de dados, tratamento de dados, definição de perfis de dados |
Persona principal do desenvolvedor | Engenheiro de dados, integrador de dados |
Engenheiro de dados, integrador de dados, Analista de Negócios |
Engenheiro de dados, cientista de dados, Desenvolvedor de dados |
Conjunto de habilidades de desenvolvedor principal | ETL, SQL, JSON |
ETL, M, SQL |
Spark (Scala, Python, Spark SQL, R) |
Código já escrito | Sem código, código baixo |
Sem código, código baixo |
Código |
Volume de dados | Baixo a alto | De baixo para cima | Baixo para alto |
Interface de desenvolvimento | Feiticeiro Tela |
Power query | Caderno, Definição de trabalho do Spark |
Fontes | 30+ conectores | 150+ conectores | Centenas de bibliotecas Spark |
Destinos | 18+ conectores | Casa do lago, Banco de dados SQL do Azure, Azure Data explorer, Azure Synapse analytics |
Centenas de bibliotecas Spark |
Complexidade da transformação | Baixa: leve - conversão de tipo, mapeamento de colunas, mesclagem/divisão de arquivos, hierarquia nivelada |
De baixo para alto: + de 300 funções de transformação |
De baixo para alto: suporte para Spark nativo e bibliotecas de código aberto |
Analise os três cenários a seguir para obter ajuda na escolha de como trabalhar com seus dados no Fabric.
Cenário1
Leo, um engenheiro de dados, precisa ingerir um grande volume de dados de sistemas externos, tanto no local quanto na nuvem. Esses sistemas externos incluem bancos de dados, sistemas de arquivos e APIs. Leo não quer escrever e manter código para cada conector ou operação de movimentação de dados. Ele quer seguir as melhores práticas das camadas do sistema de medalhas, com bronze, prata e ouro. Leo não tem nenhuma experiência com o Spark, então ele prefere a interface do usuário de arrastar e soltar tanto quanto possível, com codificação mínima. E ele também quer processar os dados em um cronograma.
A primeira etapa é obter os dados brutos para a camada bronze a partir de recursos de dados do Azure e várias fontes de terceiros (como Snowflake Web, REST, AWS S3, GCS, etc.). Ele quer um lakehouse consolidado, para que todos os dados de várias fontes de LOB, locais e de nuvem residam em um único lugar. Leo analisa as opções e seleciona a atividade de cópia de pipeline como a escolha apropriada para a sua cópia binária bruta. Esse padrão se aplica à atualização de dados históricos e incrementais. Com a atividade de cópia, o Leo pode carregar dados 'Gold' num data warehouse sem necessidade de código, caso se justifique, e os pipelines proporcionam uma ingestão de dados de alta escala que pode mover dados em escala de petabytes. A atividade de cópia é a melhor opção low-code e no-code para mover petabytes de dados para lakehouses e armazéns a partir de variedades de fontes, seja ad hoc ou por meio de um cronograma.
Cenário2
Mary é engenheira de dados com um profundo conhecimento dos vários requisitos de relatórios analíticos LOB. Uma equipa upstream implementou com sucesso uma solução para migrar os dados históricos e incrementais de várias Linhas de Negócio (LOB) para um lakehouse comum. Mary foi encarregada de limpar os dados, aplicar lógicas de negócios e carregá-los em vários destinos (como Azure SQL DB, ADX e uma lakehouse) em preparação para suas respetivas equipes de relatórios.
Mary é uma usuária experiente do Power Query e o volume de dados está na faixa baixa a média para alcançar o desempenho desejado. Os fluxos de dados fornecem interfaces no-code ou low-code para a ingestão de dados a partir de centenas de fontes. Com fluxos de dados, você pode transformar dados usando 300+ opções de transformação de dados e gravar os resultados em vários destinos com uma interface de usuário fácil de usar e altamente visual. Mary analisa as opções e decide que faz sentido usar Dataflow Gen 2 como sua opção de transformação preferida.
Cenário3
Adam é um engenheiro de dados que trabalha para uma grande empresa de varejo que usa um lakehouse para armazenar e analisar os dados de seus clientes. Como parte do seu trabalho, Adam é responsável por construir e manter os pipelines de dados que extraem, transformam e carregam dados no lakehouse. Um dos requisitos de negócios da empresa é realizar análises de avaliação de clientes para obter insights sobre as experiências de seus clientes e melhorar seus serviços.
Adam decide que a melhor opção é usar Spark para construir a lógica de extração e transformação. O Spark fornece uma plataforma de computação distribuída que pode processar grandes quantidades de dados em paralelo. Ele escreve um aplicativo Spark usando Python ou Scala, que lê dados estruturados, semi-estruturados e não estruturados do OneLake para avaliações e feedback dos clientes. O aplicativo limpa, transforma e grava dados em tabelas Delta na casa do lago. Os dados estão então prontos para serem usados para análises a jusante.