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 mesa final 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 pela atividade Copiar no Módulo 1: Criar um pipeline com o Data Factory.
  • Transforme os dados importados da tabela Lakehouse.
  • Conecte-se a um arquivo CSV contendo dados de descontos.
  • Transforme os dados de descontos.
  • Combine 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 , Dataflow Gen2 para criar um novo fluxo de dados gen2 . Screenshot showing the Fabric Create page with the Dataflow Gen2 button highlighted.

  2. No novo menu de 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. Procure 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 à fonte de dados é exibida e uma nova conexão é criada automaticamente para você com base no usuário conectado no momento. Selecione Seguinte.

    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. A caixa de diálogo Escolher dados é exibida. Use o painel de navegação para encontrar 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 a criação de perfil de dados. Você pode aplicar a transformação correta e direcionar os valores de dados corretos 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 coluna e 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 selecione 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) No separador Base do friso, selecione a opção Escolher colunas no grupo Gerir 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.

    • lpepDropoffDatahora
    • puLocationId
    • doLocationId
    • captaçãoLatitude
    • 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 vir um aviso A lista 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 onde um desconto foi aplicado e, em seguida, selecione OK.

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

  6. Selecione o menu suspenso IpepPickupDatetime column sort and filter, selecione Date filters e escolha o filtro Between... fornecido para os tipos Date e Date/Time.

    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.

Conectar-se a um arquivo CSV contendo dados de desconto

Agora, com os dados das viagens em vigor, queremos carregar os dados que contêm os respetivos descontos para cada dia e VendorID, e preparar os dados antes de os combinar com os dados das viagens.

  1. Na guia Página Inicial no menu do editor de fluxo de dados, selecione a opção Obter dados e 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 à 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 Seguinte.

    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. Analisando os dados, vemos que os cabeçalhos parecem estar na primeira linha. Promova-os para cabeçalhos selecionando o menu de contexto da tabela no canto superior esquerdo da área da grade de visualização para selecionar Usar primeira linha como cabeçalhos.

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

    Nota

    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 Despivotar outras colunas. Isso permite transformar colunas em pares atributo-valor, onde 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 de 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 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.

Combine dados de viagens e descontos

O próximo passo é combinar as duas mesas em uma única tabela que tenha o desconto que deve ser aplicado à viagem, e o total ajustado.

  1. Primeiro, alterne o botão Visualização de diagrama para que você possa ver ambas as 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 lista suspensa Direita para mesclagem e, em seguida, selecione o ícone "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. É exibida uma mensagem 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álogo Mesclar .

    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 no modo Diagrama mostrando a relação da nova consulta Mesclar com as duas consultas criadas anteriormente. Observando o painel de tabela do editor, role para a direita da lista de colunas de consulta Mesclar para ver a presença de uma nova coluna com valores de tabela. Esta é a coluna "Descontos Verdes Gerados em Nova York" e seu tipo é [Tabela]. 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 do 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, pode utilizar a linguagem de fórmula do Power Query (também conhecida como M) para definir como a nova coluna deve ser calculada. Insira TotalAfterDiscount para o nome da coluna Novo, selecione Moeda para o tipo de dados e forneça a seguinte expressão M para a fórmula da coluna Personalizada:

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

    Em seguida, 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, em seguida, selecione a guia Transformar na parte superior da janela do editor. No grupo da coluna Número, selecione a lista suspensa Arredondamento e escolha Arredondar....

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

  10. Na caixa de diálogo Rodar, digite 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 Date para Date/Time.

    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 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.

Carregue a consulta de saída para uma tabela no Lakehouse

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

  1. Selecione a consulta Mesclagem de saída criada anteriormente. Em seguida, selecione a guia Página Inicial no editor e Adicionar destino de dados do agrupamento Consulta para selecionar um destino Lakehouse.

    Screenshot showing the Add data destination button with Lakehouse highlighted.

  2. Na caixa de diálogo Conectar ao destino dos dados, sua conexão já deve estar selecionada. Selecione Seguinte para continuar.

  3. Na caixa de diálogo Escolher destino de destino, navegue até o Lakehouse onde deseja carregar os dados e nomeie a nova tabela nyc_taxi_with_discounts e, em seguida, 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 de atualização padrão Substituir, verifique se as 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 principal do editor, 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 Dataflow Gen2 é criado em um espaço de trabalho, os itens Lakehouse e Warehouse são provisionados junto com seus modelos semânticos e de 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 que o Dataflow Gen2 funcione, não devem ser excluídos e não se destinam a ser usados diretamente pelos usuários. Os itens são um detalhe de implementação do Dataflow Gen2. Os itens não são visíveis no espaço de trabalho, mas podem ser acessíveis em outras experiências, como as experiências Notebook, SQL-endpoint, Lakehouse e Warehouse. Você pode reconhecer os itens por seu prefixo no nome. O prefixo dos itens é 'DataflowsStaging'.

  6. (Opcional) Na página do espaço de trabalho, você pode renomear seu 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, quando terminar, você verá sua nova tabela Lakehouse criada conforme configurado nas configurações de destino de dados.

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

  8. Verifique sua Lakehouse para ver a nova mesa carregada lá.

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

  • Crie um novo Dataflow Gen2.
  • Importe e transforme dados de exemplo.
  • Importe e transforme dados de texto/CSV.
  • Mescle dados de ambas as fontes de dados em uma nova consulta.
  • Transforme dados e gere novas colunas em uma consulta.
  • Configure uma origem de destino de saída para uma consulta.
  • Renomeie e atualize seu novo fluxo de dados.

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