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
Na barra lateral, selecione Criar e, em seguida, Fluxo de dados Gen2 para criar um novo fluxo de dados gen2.
No menu novo fluxo de dados, selecione Obter dados e, em seguida, Mais....
Pesquise e selecione o conector Lakehouse.
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.
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.
(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.
Transforme os dados importados do Lakehouse
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 .
(Opcional) Na guia Página Inicial da faixa de opções, selecione a opção Escolher colunas no grupo Gerenciar colunas.
(Opcional) Na caixa de diálogo Escolher colunas , desmarque algumas colunas listadas aqui e selecione OK.
- lpepDropoffDatetime
- puLocationId
- doLocationId
- pickupLatitude
- dropoffLongitude
- rateCodeID
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.)
Selecione 'Y' para mostrar apenas as linhas em que um desconto foi aplicado e selecione OK.
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.
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.
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.
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.
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.
- Caminho do arquivo ou URL -
Na caixa de diálogo Visualizar dados do arquivo, selecione Criar.
Transformar os dados de desconto
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.
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.
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.
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.
Altere o tipo de dados da coluna Data selecionando o menu tipo de dados à esquerda do nome da coluna e escolhendo Data.
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.
Na caixa de diálogo Dividir, insira o valor 100.
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.
Primeiro, alterne o botão Exibição de diagrama para que você possa ver as duas consultas.
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.
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.
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.
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.
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.
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.
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 .
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.
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....
Na caixa de diálogo Arredondar, insira 2 para o número de casas decimais e selecione OK.
Altere o tipo de dados do IpepPickupDatetime de Data para Data/Hora.
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.
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.
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 .
Na caixa de diálogo Conectar-se ao destino de dados , sua conexão já deve estar selecionada. Selecione Avançar para continuar.
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.
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.
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".
(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.
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 .
Verifique seu Lakehouse para exibir a nova tabela carregada lá.
Conteúdo relacionado
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.