Compartilhar via


Módulo 2: Transformar dados com um fluxo de dados no Data Factory

Este módulo leva cerca de 25 minutos para criar um fluxo de dados, aplicar transformações e mover os dados brutos da tabela Bronze para uma tabela Gold Lakehouse.

Com os dados brutos carregados em sua tabela bronze lakehouse do último módulo, agora você pode preparar esses dados e enriquecê-los combinando-os com outra tabela que contém descontos para cada fornecedor e suas viagens durante um dia específico. Esta tabela final do Gold Lakehouse está carregada e pronta para consumo.

As etapas de alto nível no fluxo de dados são as seguintes:

  • Obtenha dados brutos da tabela Lakehouse criada pelo atividade Copy no Módulo 1: Criar um pipeline com o Data Factory.
  • Transforme os dados importados da tabela Lakehouse.
  • Conecte-se a um arquivo CSV que contém dados de descontos.
  • Transformar os dados de descontos.
  • Combinar dados de viagens e descontos.
  • Carregue a consulta de saída na tabela Gold Lakehouse.

Obter dados de uma tabela Lakehouse

  1. Na barra lateral, selecione Criar e, em seguida, Fluxo de dados Gen2 para criar um novo fluxo de dados gen2. Screenshot showing the Fabric Create page with the Dataflow Gen2 button highlighted.

  2. No menu novo fluxo de dados, selecione Obter dados e, em seguida, Mais....

    Screenshot showing the Dataflow menu with Get data button highlighted and the More... option highlighted from its menu.

  3. Pesquise e selecione o conector Lakehouse.

    Screenshot showing the selection of the Lakehouse data source from the Choose data source menu.

  4. A caixa de diálogo Conectar-se à fonte de dados é exibida e uma nova conexão é criada automaticamente para você com base no usuário conectado no momento. Selecione Avançar.

    Screenshot showing the configuration of the data source settings for your new Lakehouse with your current signed in user, and the Next button selected.

  5. O diálogo Escolher dados é exibido. Use o painel de navegação para localizar o Lakehouse que você criou para o destino no módulo anterior e selecione a tabela de dados Tutorial_Lakehouse.

    Screenshot showing the Lakehouse browser with the workspace, lakehouse, and table created with the Copy activity in module 1.

  6. (Opcional) Depois que a tela for preenchida com os dados, você poderá definir informações de perfil de coluna, pois isso é útil para criação de perfil de dados. Você pode aplicar a transformação certa e direcionar os valores de dados certos com base nela.

    Para fazer isso, selecione Opções no painel da faixa de opções, selecione as três primeiras opções em Perfil de colunae, em seguida, selecione OK.

    Screenshot showing the column options selection for your data.

Transforme os dados importados do Lakehouse

  1. Selecione o ícone de tipo de dados no cabeçalho da coluna da segunda coluna, IpepPickupDatetime, para exibir um menu suspenso e selecionar o tipo de dados no menu para converter a coluna do tipo Data/Hora em Data . Screenshot showing the selection of the Date data type for the IpepPickupDatetime column.

  2. (Opcional) Na guia Página Inicial da faixa de opções, selecione a opção Escolher colunas no grupo Gerenciar colunas.

    Screenshot showing the Choose columns button on the Home tab of the dataflow editor.

  3. (Opcional) Na caixa de diálogo Escolher colunas , desmarque algumas colunas listadas aqui e selecione OK.

    • lpepDropoffDatetime
    • puLocationId
    • doLocationId
    • pickupLatitude
    • dropoffLongitude
    • rateCodeID

    Screenshot showing the Choose columns dialog with the identified columns deselected.

  4. Selecione o filtro da coluna storeAndFwdFlag e o menu suspenso de classificação. (Se você vir que uma Lista de avisos pode estar incompleta, selecione Carregar mais para ver todos os dados.)

    Screenshot showing the filter and sort dialog for the column.

  5. Selecione 'Y' para mostrar apenas as linhas em que um desconto foi aplicado e selecione OK.

    Screenshot showing the values filter with only 'Y' selected.

  6. Selecione o menu suspenso de classificação e filtragem da coluna Ipep_Pickup_Datetime, depois selecione Filtros de data e escolha o filtro Entre... fornecido para os tipos Data e Data/Hora.

    Screenshot showing the selection of the Date filters option in the column sort and format dropdown.

  7. Na caixa de diálogo Filtrar linhas, selecione datas entre 1º de janeiro de 2015 e 31 de janeiro de 2015 e, em seguida, selecione OK.

    Screenshot showing the selection of the dates in January 2015.

Conecte-se a um arquivo CSV que contém dados de descontos

Agora, com os dados das viagens em vigor, queremos carregar os dados que contêm os respectivos descontos para cada dia e VendorID e preparar os dados antes de combiná-los com os dados de corridas.

  1. Na guia Página Inicial no menu do editor de fluxo de dados, selecione a opção Obter dados e, em seguida, escolha Texto/CSV.

    Screenshot showing the selection of the Get data menu from the Home tab, with Text/CSV highlighted.

  2. Na caixa de diálogo Conectar-se à fonte de dados, forneça os seguintes detalhes:

    • Caminho do arquivo ou URL - https://raw.githubusercontent.com/ekote/azure-architect/master/Generated-NYC-Taxi-Green-Discounts.csv
    • Tipo de autenticação – Anônimo

    Em seguida, selecione Avançar.

    Screenshot showing the Text/CSV settings for the connection.

  3. Na caixa de diálogo Visualizar dados do arquivo, selecione Criar.

    Screenshot showing the Preview file data dialog with the Create button highlighted.

Transformar os dados de desconto

  1. Examinando os dados, vemos que os cabeçalhos parecem estar na primeira linha. Promova-os aos cabeçalhos selecionando o menu de contexto da tabela na parte superior esquerda da área de grade de visualização para selecionar Usar a primeira linha como cabeçalhos.

    Screenshot showing the selection of the Use first row as headers option from the table context menu.

    Observação

    Depois de promover os cabeçalhos, você pode ver uma nova etapa adicionada ao painel Etapas aplicadas na parte superior do editor de fluxo de dados para os tipos de dados de suas colunas.

  2. Clique com o botão direito do mouse na coluna VendorID e, no menu de contexto exibido, selecione a opção Transformar outras colunas em linhas. Isso permite transformar colunas em pares atributo-valor, em que as colunas se tornam linhas.

    Screenshot showing the context menu for the VendorID column with the Unpivot other columns selection highlighted.

  3. Com a tabela não dinâmica, renomeie as colunas Atributo e Valor clicando duas vezes nelas e alterando Atributo para Data e Valor para Desconto.

    Screenshot showing the table columns after renaming Attribute to Date and Value to Discount.

  4. Altere o tipo de dados da coluna Data selecionando o menu tipo de dados à esquerda do nome da coluna e escolhendo Data.

    Screenshot showing the selection of the Date data type for the Date column.

  5. Selecione a coluna Desconto e, em seguida, selecione a guia Transformar no menu. Selecione a coluna Número e, em seguida, selecione transformações numéricas padrão no submenu e escolha Dividir.

    Screenshot showing the selection of the Divide option to transform data in the Discount column.

  6. Na caixa de diálogo Dividir, insira o valor 100.

    Screenshot showing the Divide dialog with the value 100 entered and the OK button highlighted.

Combinar dados de viagens e descontos

A próxima etapa é combinar ambas as tabelas em uma única tabela que tenha o desconto que deve ser aplicado à viagem e o total ajustado.

  1. Primeiro, alterne o botão Exibição de diagrama para que você possa ver as duas consultas.

    Screenshot showing the Diagram view toggle button with both queries created in this tutorial displayed.

  2. Selecione a consulta nyc_taxi e, na guia Página Inicial, Selecione o menu Combinar e escolha Mesclar consultas e, em seguida, Mesclar consultas como novas.

    Screenshot showing the Merge queries as new selection for the nyc_taxi query.

  3. Na caixa de diálogo Mesclar , selecione Generated-NYC-Taxi-Green-Discounts na tabela Direita para mesclagem suspensa e selecione o ícone de "lâmpada" no canto superior direito da caixa de diálogo para ver o mapeamento sugerido de colunas entre as duas tabelas.

    Screenshot showing the configuration of the Merge dialog with suggested column mappings displayed.

    Escolha cada um dos dois mapeamentos de coluna sugeridos, um de cada vez, mapeando as colunas VendorID e date de ambas as tabelas. Quando ambos os mapeamentos são adicionados, os cabeçalhos de coluna correspondentes são realçados em cada tabela.

  4. Uma mensagem é mostrada solicitando que você permita a combinação de dados de várias fontes de dados para exibir os resultados. Selecione OK na caixa de diálogoMesclar.

    Screenshot showing the request to approve combining data from multiple data sources, with the OK button highlighted.

  5. Na área da tabela, você verá inicialmente um aviso de que "A avaliação foi cancelada porque a combinação de dados de várias fontes pode revelar dados de uma fonte para outra. Selecione continuar se a possibilidade de revelar dados estiver correta." Selecione Continuar para exibir os dados combinados.

    Screenshot showing the warning about combining data from multiple data sources with the Continue button highlighted.

  6. Observe como uma nova consulta foi criada na exibição Diagrama mostrando a relação da nova consulta Mesclar com as duas consultas criadas anteriormente. Olhando para o painel de tabela do editor, role para a direita da lista Mesclar colunas de consulta para ver se uma nova coluna com valores de tabela está presente. Esta é a coluna "Descontos verdes de táxi de NYC gerados" e seu tipo é [Table]. No cabeçalho da coluna, há um ícone com duas setas indo em direções opostas, permitindo que você selecione colunas da tabela. Desmarque todas as colunas, exceto Desconto, e selecione OK.

    Screenshot showing the merged query with the column selection menu displayed for the newly generated column Generated-NYC-Taxi-Green-Discounts.

  7. Com o valor de desconto agora no nível da linha, podemos criar uma nova coluna para calcular o valor total após o desconto. Para fazer isso, selecione a guia Adicionar coluna na parte superior do editor e escolha Coluna personalizada no grupo Geral .

    Screenshot showing the Add custom column button highlighted on the General section of the Add column tab.

  8. Na caixa de diálogo Coluna personalizada, você pode usar a linguagem de fórmula Power Query (também conhecida como M) para definir como a nova coluna deve ser calculada. Insira TotalAfterDiscount para o Novo nome da coluna, selecione Moeda para o Tipo de dados e forneça a seguinte expressão M para a fórmula de coluna Personalizada:

    se [totalAmount] > 0, então [totalAmount] * ( 1 -[Discount] ) else [totalAmount]

    Depois, selecione OK.

    Screenshot showing the Custom column configuration screen with the New column name, Data type and Custom column formula highlighted.

  9. Selecione a coluna TotalAfterDiscount recém-criada e selecione a guia Transformar na parte superior da janela do editor. No grupo Coluna de números, selecione a lista suspensa Arredondamento e, em seguida, escolha Arredondar....

    Screenshot showing the Round... option on the Transform tab of the editor window.

  10. Na caixa de diálogo Arredondar, insira 2 para o número de casas decimais e selecione OK.

    Screenshot showing the Round dialog with 2 for the number of decimal places and the OK button highlighted.

  11. Altere o tipo de dados do IpepPickupDatetime de Data para Data/Hora.

    Screenshot showing the selection of the Date/Time data type for the IpepPickupDatetime column.

  12. Por fim, expanda o painel Configurações de consulta do lado direito do editor se ele ainda não estiver expandido e renomeie a consulta de Mesclar para Saída.

    Screenshot showing the renaming of the query from Merge to Output.

Carregar a consulta de saída em uma tabela no Lakehouse

Com a consulta de saída agora totalmente preparada e com os dados prontos para saída, podemos definir o destino de saída para a consulta.

  1. Selecione a Consulta de mesclagem de Saída criada anteriormente. Em seguida, selecione a guia Página Inicial no editor e Adicionar destino de dadosdo grupoConsulta para selecionar um destino Lakehouse .

    Screenshot showing the Add data destination button with Lakehouse highlighted.

  2. Na caixa de diálogo Conectar-se ao destino de dados , sua conexão já deve estar selecionada. Selecione Avançar para continuar.

  3. Na caixa de diálogo Escolher destino de destino , navegue até o Lakehouse onde você deseja carregar os dados e nomeie a nova tabela nyc_taxi_with_discounts e selecione Avançar novamente.

    Screenshot showing the Choose destination target dialog with Table name nyc_taxi_with_discounts.

  4. Na caixa de diálogo Escolher configurações de destino, deixe o método Substituir atualização padrão, marcar que suas colunas estão mapeadas corretamente e selecione Salvar configurações.

    Screenshot showing the Choose destination settings dialog with the Save settings button highlighted.

  5. De volta à janela do editor main, confirme se você vê o destino de saída no painel Configurações de consulta da tabela Saída e selecione Publicar.

    Importante

    Quando o primeiro Fluxo de Dados Gen2 for criado em um espaço de trabalho, os itens do Lakehouse e Warehouse serão provisionados junto com seus modelos semânticos e do ponto de extremidade de análise SQL relacionados. Esses itens são compartilhados por todos os fluxos de dados no espaço de trabalho e são necessários para a operação do Fluxo de Dados Gen2, não devem ser excluídos e não devem ser usados diretamente pelos usuários. Os itens são um detalhe de implementação do Fluxo de Dados Gen2. Os itens não são visíveis no espaço de trabalho, mas podem estar acessíveis em outras experiências, como as experiências de Notebook, ponto de extremidade do SQL, Lakehouse e Warehouse. Você pode reconhecer os itens pelo prefixo no nome. O prefixo dos itens é "DataflowsStaging".

  6. (Opcional) Na página do workspace, você pode renomear o fluxo de dados selecionando as reticências à direita do nome do fluxo de dados que aparece depois de selecionar a linha e escolhendo Propriedades.

    Screenshot showing the Properties option selected on the menu for a dataflow where it can be renamed.

  7. Selecione o ícone de atualização para o fluxo de dados depois de selecionar sua linha e, ao concluir, você deverá ver sua nova tabela lakehouse criada como definida nas configurações de destino de dados .

    Screenshot showing the selection of the refresh button to refresh the dataflow.

  8. Verifique seu Lakehouse para exibir a nova tabela carregada lá.

Neste segundo módulo do nosso tutorial de ponta a ponta para a sua primeira integração de dados usando o Data Factory no Microsoft Fabric, você aprendeu a:

  • Criar um novo Fluxo de Dados Gen2.
  • Importar e transformar dados de exemplo.
  • Importar e transformar dados de texto/CSV.
  • Mesclar dados de ambas as fontes de dados em uma nova consulta.
  • Transformar dados e gerar novas colunas em uma consulta.
  • Configurar uma origem de destino de saída para uma consulta.
  • Renomear e atualizar seu novo fluxo de dados.

Vá para a próxima seção agora para integrar seu pipeline de dados.