Partilhar via


Tutorial: Transformar dados usando fluxos de dados de mapeamento

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Gorjeta

Data Factory em Microsoft Fabric é a próxima geração de Azure Data Factory, com uma arquitetura mais simples, IA incorporada e novas funcionalidades. Se és novo na integração de dados, começa pelo Fabric Data Factory. As cargas de trabalho existentes do ADF podem atualizar para o Fabric para aceder a novas capacidades em ciência de dados, análise em tempo real e relatórios.

Neste tutorial, utilizas a interface de utilizador (UX) do Azure Data Factory para criar um pipeline que copia e transforma dados de uma fonte Gen2 do Azure Data Lake Storage (ADLS) para um sink ADLS Gen2 usando fluxo de dados de mapeamento. O padrão de configuração neste tutorial pode ser expandido ao transformar dados usando o fluxo de dados de mapeamento

Este tutorial destina-se a mapear fluxos de dados em geral. Os fluxos de dados estão disponíveis tanto no Azure Data Factory como no Synapse Pipelines. Se és novo nos fluxos de dados em Azure Synapse Pipelines, segue o Fluxo de Dados usando Azure Synapse Pipelines.

Neste tutorial, vai executar os seguintes passos:

  • Criar uma fábrica de dados.
  • Crie um pipeline com uma atividade Fluxo de Dados.
  • Crie um fluxo de dados de mapeamento com quatro transformações.
  • Testar o funcionamento do pipeline.
  • Monitorizar uma atividade de Fluxo de Dados

Pré-requisitos

  • Subscrição do Azure. Se não tiver uma subscrição Azure, crie uma conta Azure gratuita antes de começar.
  • Azure Data Lake Storage Gen2 conta. Você usa o armazenamento ADLS como fonte e destino de dados. Se não tiver uma conta de armazenamento, veja Criar uma conta de armazenamento Azure para os passos necessários para criar uma.
  • Descarregue MoviesDB.csv aqui. Para recuperar o ficheiro de GitHub, copie o conteúdo para um editor de texto à sua escolha para guardar localmente como um ficheiro .csv. Carregue o arquivo para sua conta de armazenamento em um contêiner chamado 'sample-data'.

Criar uma fábrica de dados

Nesta etapa, você cria uma fábrica de dados e abre o UX do Data Factory para criar um pipeline na fábrica de dados.

  1. Abra Microsoft Edge ou Google Chrome. Atualmente, a interface Data Factory é suportada apenas nos navegadores Microsoft Edge e Google Chrome.

  2. No menu superior, selecione Criar um recurso>Analytics>Data Factory :

    Seleção do Data Factory no

  3. Na página Novo data factory, em Nome, insira ADFTutorialDataFactory.

    O nome da fábrica de dados Azure deve ser globalmente único. Se receber uma mensagem de erro relacionada com o valor do nome, introduza um nome diferente para a fábrica de dados. (por exemplo, seunomeADFTutorialDataFactory). Para regras de nomenclatura para artefatos do Data Factory, consulte Regras de nomenclatura do Data Factory.

    Nova mensagem de erro da fábrica de dados devido a nome duplicado.

  4. Selecione a subscrição do Azure onde quer criar o Data Factory.

  5. Para o Grupo de Recursos, execute uma das seguintes etapas:

    1. Selecione Usar existente e selecione um grupo de recursos existente na lista suspensa.

    2. Selecione Criar novo e insira o nome de um grupo de recursos.

    Para saber mais sobre grupos de recursos, veja Use grupos de recursos para gerir os seus Azure recursos.

  6. Em Versão, selecione V2.

  7. Em Região, selecione um local para a fábrica de dados. Só são exibidas na lista drop-down as localizações que são suportadas. Armazenamentos de dados (por exemplo, Armazenamento do Azure e SQL Database) e computações (por exemplo, Azure HDInsight) usados pela data factory podem estar noutras regiões.

  8. Selecione Review + Create e depois selecione Create.

  9. Após a conclusão da criação, você verá o aviso na Central de notificações. Selecione Ir para o recurso para navegar até a página Data factory.

  10. Selecione Iniciar estúdio para iniciar o estúdio do Data Factory em uma guia separada.

Crie uma linha de processamento com uma atividade de Fluxo de Dados

Neste passo, cria-se um pipeline que contém uma atividade Fluxo de Dados.

  1. Na página inicial do Azure Data Factory, selecione Orchestrate.

    Captura de ecrã que mostra a página inicial Azure Data Factory.

  2. Agora está aberta uma janela para um novo pipeline. Na guia Geral das propriedades do pipeline, digite TransformMovies para Nome do pipeline.

  3. No painel Atividades, expanda o acordeão Mover e Transformar. Arraste e solte a atividade Fluxo de Dados do painel para a área de trabalho do pipeline.

    Captura de ecrã que mostra o canvas do pipeline onde podes colocar a atividade Fluxo de Dados.

  4. Nomeie sua atividade de fluxo de dados como DataFlow1.

  5. Na barra superior da tela do pipeline, ative o controlo deslizante Fluxo de Dados debug. O modo de depuração permite testes interativos da lógica de transformação em um cluster Spark ao vivo. Clusters de Fluxo de Dados demoram 5-7 minutos a aquecer, e recomenda-se que os utilizadores liguem primeiro a depuração se planearem desenvolver em Fluxo de Dados. Para obter mais informações, consulte Modo de depuração.

    Captura de tela que mostra a opção para ativar a depuração de fluxo de dados.

Criar lógica de transformação na tela de fluxo de dados

Nesta etapa, cria-se um fluxo de dados a partir do moviesDB.csv no armazenamento ADLS e agrega-se a classificação média de comédias de 1910 a 2000. Em seguida, escreva esse arquivo de volta para o armazenamento ADLS.

  1. No painel abaixo da tela, vá para as Configurações da sua atividade de fluxo de dados e selecione Novo, localizado ao lado do campo de fluxo de dados. Isso abre a tela de fluxo de dados.

    Captura de tela mostrando como abrir o editor de fluxo de dados a partir do editor de pipeline.

  2. No painel Propriedades , em Geral, nomeie seu fluxo de dados: TransformMovies.

  3. Na tela de fluxo de dados, adicione uma fonte selecionando a caixa Adicionar fonte .

    Captura de tela que mostra a caixa Adicionar fonte.

  4. Nomeie sua fonte como MoviesDB. Selecione Novo para criar um novo conjunto de dados de origem.

    Captura de tela que mostra onde você seleciona Novo depois de nomear sua fonte.

  5. Escolha Azure Data Lake Storage Gen2. Selecione Continuar.

    Captura de ecrã que mostra onde está o bloco Azure Data Lake Storage Gen2.

  6. Escolha DelimitedText. Selecione Continuar.

    Captura de ecrã que mostra o mosaico DelimitedText.

  7. Nomeie seu conjunto de dados como MoviesDB. No menu suspenso do serviço vinculado, escolha Novo.

    Captura de ecrã que mostra o menu pendente Serviço Ligado.

  8. Na tela de criação de serviço vinculado, nomeie seu serviço vinculado ADLS gen2 ADLSGen2 e especifique seu método de autenticação. Em seguida, insira suas credenciais de conexão. Neste tutorial, estamos usando a chave de conta para nos conectarmos à nossa conta de armazenamento. Você pode selecionar Testar conexão para verificar se suas credenciais foram inseridas corretamente. Selecione Criar quando terminar.

    Captura de ecrã do painel para criar um novo serviço ligado para Azure Data Lake Storage.

  9. Quando estiver de volta à tela de criação do conjunto de dados, insira onde o arquivo está localizado no campo Caminho do arquivo . Neste tutorial, o arquivo moviesDB.csv está localizado no contenedor de dados de exemplo. Como o arquivo tem cabeçalhos, marque Primeira linha como cabeçalho. Selecione A partir da conexão/armazenagem para importar o esquema de cabeçalho diretamente a partir do ficheiro em armazenamento. Selecione OK quando terminar.

    Captura de tela do painel para criar um conjunto de dados.

  10. Se o seu cluster de depuração tiver sido iniciado, vá para a aba Visualização de Dados da transformação de origem e selecione Atualizar para obter um instantâneo dos dados. Você pode usar a visualização de dados para verificar se sua transformação está configurada corretamente.

    Captura de tela que mostra onde você pode visualizar seus dados para verificar se sua transformação está configurada corretamente.

  11. Ao lado do nó de origem na tela de fluxo de dados, selecione o ícone de adição para adicionar uma nova transformação. A primeira transformação que você está adicionando é um filtro.

    Captura de ecrã da superfície de fluxo de dados.

  12. Nomeie a transformação de filtro FilterYears. Selecione a caixa de expressão ao lado de Filtrar em e, em seguida, Abrir construtor de expressões. Aqui você especifica sua condição de filtragem.

    Captura de ecrã que mostra a caixa para Filtrar por expressão.

  13. O construtor de expressões de fluxo de dados permite criar interativamente expressões para usar em várias transformações. As expressões podem incluir funções internas, colunas do esquema de entrada e parâmetros definidos pelo usuário. Para mais informações sobre como criar expressões, consulte Fluxo de Dados expression builder.

    Neste tutorial, você quer filtrar filmes de comédia de gênero que saíram entre os anos 1910 e 2000. Como ano é atualmente uma cadeia de caracteres, você precisa convertê-lo em um inteiro usando a toInteger() função. Use os operadores maior que ou igual a (>=) e menor ou igual a (<=) para comparar com os valores literais dos anos 1910 e 2000. Combine estas expressões com o operador e (&&). A expressão sai como:

    toInteger(year) >= 1910 && toInteger(year) <= 2000

    Para descobrir quais filmes são comédias, pode usar a função rlike() para encontrar o padrão 'Comédia' na coluna géneros. Unifique a rlike expressão com a comparação do ano para obter:

    toInteger(year) >= 1910 && toInteger(year) <= 2000 && rlike(genres, 'Comedy')

    Se você tiver um cluster de depuração ativo, poderá verificar sua lógica selecionando Atualizar para ver a saída da expressão em comparação com as entradas usadas. Há mais de uma resposta certa sobre como você pode realizar essa lógica usando a linguagem de expressão de fluxo de dados.

    Captura de ecrã do construtor de expressões de filtro.

    Selecione Salvar e Concluir quando terminar a expressão.

  14. Obtenha uma Pré-visualização de Dados para verificar se o filtro está a funcionar corretamente.

    Captura de ecrã que mostra a Pré-visualização de Dados que obteve.

  15. A próxima transformação que você adicionará é uma transformação Agregada em Modificador de esquema.

    Captura de tela que mostra o modificador de esquema Aggregate.

  16. Nomeie sua transformação agregada como AggregateComedyRatings. Na guia Agrupar por , selecione ano na lista suspensa para agrupar as agregações pelo ano em que o filme foi lançado.

    Captura de ecrã que mostra a opção de ano no separador Agrupar por, em Definições Agregadas.

  17. Vá para a guia Agregações . Na caixa de texto à esquerda, nomeie a coluna agregada AverageComedyRating. Selecione a caixa de expressão correta para inserir a expressão agregada por meio do construtor de expressões.

    Captura de ecrã que mostra a opção de ano no separador Agregações em Definições de Agregação.

  18. Para obter a média da coluna Classificação, use a função agregada avg(). Como Rating é uma string e avg() recebe uma entrada numérica, devemos converter o valor em um número através da toInteger() função. Esta expressão parece-se com:

    avg(toInteger(Rating))

    Selecione Salvar e Concluir quando terminar.

    Captura de ecrã que mostra a expressão guardada.

  19. Vá para a guia Visualização de dados para exibir a saída da transformação. Observe que apenas duas colunas estão lá, ano e AverageComedyRating.

    Captura de ecrã que mostra a pré-visualização agregada.

  20. Em seguida, você deseja adicionar uma transformação Sink em Destination.

    Captura de tela que mostra onde adicionar uma transformação de coletor em Destino.

  21. Nomeie a pia Lavatório. Selecione Novo para criar o seu conjunto de dados de destino.

    Captura de tela que mostra onde você pode nomear seu coletor e criar um novo conjunto de dados do coletor.

  22. Escolha Azure Data Lake Storage Gen2. Selecione Continuar.

    Captura de ecrã que mostra o Azure Data Lake Storage Gen2 tile que podes escolher.

  23. Escolha DelimitedText. Selecione Continuar.

    Captura de tela do painel para selecionar um tipo de conjunto de dados.

  24. Nomeie o seu conjunto de dados de destino MoviesSink. Para serviço vinculado, escolha o serviço vinculado ADLS gen2 que você criou na etapa 6. Insira uma pasta de saída para gravar seus dados. Neste tutorial, estamos a escrever para a pasta 'output' no contêiner 'sample-data'. A pasta não precisa existir de antemão e pode ser criada dinamicamente. Defina Primeira linha como cabeçalho como true e selecione Nenhum para Importar esquema. Selecione Concluir.

    Captura de tela da página de criação do coletor com a primeira linha como cabeçalho selecionada.

Agora você terminou de criar seu fluxo de dados. Você está pronto para executá-lo na sua pipeline.

Execução e monitorização do Fluxo de Dados

Você pode depurar um pipeline antes de publicá-lo. Nesta etapa, você acionará uma execução de depuração do pipeline de fluxo de dados. Enquanto a visualização de dados não grava dados, uma execução de depuração grava dados no destino de saída.

  1. Vá para o painel do pipeline. Selecione Depurar para disparar uma execução de depuração.

    Captura de tela que mostra o painel do pipeline com Debug realçado.

  2. A depuração do pipeline nas atividades de Fluxo de Dados utiliza o cluster de depuração ativo, mas ainda demora sempre pelo menos um minuto para inicializar. Pode acompanhar o progresso através do separador Saída. Quando a execução for bem-sucedida, passe o rato sobre a execução e selecione o ícone dos óculos para abrir o painel de supervisão.

    Captura de tela do status do pipeline concluído, com as ações de saída realçadas.

  3. No painel de monitoramento, selecione o botão Estágios para ver o número de linhas e o tempo gasto em cada etapa de transformação.

    Captura de tela que mostra o painel de monitoramento com o botão Estágios realçado.

    Captura de tela do painel de monitoramento onde você pode ver o número de linhas e o tempo gasto em cada etapa de transformação.

  4. Selecione uma transformação para obter informações detalhadas sobre as colunas e o particionamento dos dados.

    Captura de tela do painel de transformação de monitoramento.

Se você seguiu este tutorial corretamente, você deve ter escrito 83 linhas e 2 colunas em sua pasta de coletor. Você pode verificar se os dados estão corretos verificando seu armazenamento de blob.

O pipeline neste tutorial executa um fluxo de dados que agrega a classificação média de comédias de 1910 a 2000 e grava os dados no ADLS. Aprendeu a:

  • Criar uma fábrica de dados.
  • Crie um pipeline com uma atividade Fluxo de Dados.
  • Crie um fluxo de dados de mapeamento com quatro transformações.
  • Testar o funcionamento do pipeline.
  • Monitorizar uma atividade de Fluxo de Dados

Saiba mais sobre a linguagem de expressão de fluxo de dados.