Partilhar via


Tutorial: Transformar dados usando fluxos de dados de mapeamento

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Gorjeta

Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange tudo, desde a movimentação de dados até ciência de dados, análises em tempo real, business intelligence e relatórios. Saiba como iniciar uma nova avaliação gratuitamente!

Neste tutorial, você usa a interface do usuário (UX) do Azure Data Factory para criar um pipeline que copia e transforma dados de uma fonte Gen2 do Azure Data Lake Storage (ADLS) em um coletor ADLS Gen2 usando o 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 no Azure Data Factory e no Synapse Pipelines. Se você é novo em fluxos de dados no Azure Synapse Pipelines, siga o Fluxo de Dados usando o Azure Synapse Pipelines.

Neste tutorial, vai executar os seguintes passos:

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

Pré-requisitos

  • Subscrição do Azure. Se você não tiver uma assinatura do Azure, crie uma conta gratuita do Azure antes de começar.
  • Conta do Azure Data Lake Storage Gen2 Você usa o armazenamento ADLS como fonte e destino de dados. Se você não tiver uma conta de armazenamento, consulte Criar uma conta de armazenamento do Azure para conhecer as etapas para criar uma.
  • Descarregue MoviesDB.csv aqui. Para recuperar o arquivo do GitHub, copie o conteúdo para um editor de texto de sua escolha para salvar localmente como um arquivo .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 um data factory e abre o Data Factory UX para criar um pipeline no data factory.

  1. Abra o Microsoft Edge ou o Google Chrome. Atualmente, a interface do usuário do 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 do Azure deve ser globalmente exclusivo. 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 assinatura do Azure na qual você deseja 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, consulte Usar grupos de recursos para gerenciar seus recursos do Azure.

  6. Em Versão, selecione V2.

  7. Em Região, selecione um local para a fábrica de dados. Só aparecem na lista pendente as localizações que são suportadas. Os armazenamentos de dados (por exemplo, Armazenamento do Azure e Banco de Dados SQL) e os cálculos (por exemplo, Azure HDInsight) usados pelo data factory podem estar em outras 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.

Criar um pipeline com uma atividade de Fluxo de Dados

Nesta etapa, você cria um pipeline que contém uma atividade de Fluxo de Dados.

  1. Na home page do Azure Data Factory, selecione Orquestrar.

    Captura de ecrã que mostra a home page do 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 tela do pipeline.

    Captura de tela que mostra a área de trabalho do pipeline onde é possível soltar a atividade de fluxo de dados.

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

  5. Na barra superior da tela do pipeline, deslize o controle deslizante de depuração do Fluxo de Dados . O modo de depuração permite testes interativos da lógica de transformação em um cluster Spark ao vivo. Os clusters de Fluxo de Dados levam de 5 a 7 minutos para aquecer e os usuários são recomendados a ativar a depuração primeiro se planejarem fazer o desenvolvimento do 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 tela que mostra onde está o bloco do 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 o Armazenamento Azure Data Lake.

  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 moviesDB.csv de arquivo está localizado em dados de amostra de contêiner. 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 obter mais informações sobre como criar expressões, consulte Construtor de expressões de fluxo de dados.

    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. Unifique estas expressões com o operador e (&&). A expressão surge como:

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

    Para descobrir quais filmes são comédias, você pode usar a função para encontrar o rlike() padrão 'Comédia' nos gêneros da coluna. 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 é a expressão se parece 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 sua pia como 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 tela que mostra o bloco Azure Data Lake Storage Gen2 que você pode 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 escrevendo na 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 em seu pipeline.

Executando e monitorando o 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 do coletor.

  1. Vá para a tela 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 de pipeline de atividades de fluxo de dados usa o cluster de depuração ativo, mas ainda leva 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 de Fluxo de Dados.
  • Crie um fluxo de dados de mapeamento com quatro transformações.
  • Testar a execução do pipeline.
  • Monitorar uma atividade de fluxo de dados

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