Partilhar via


Transforme dados com segurança usando o fluxo 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.

Se és novo em Azure Data Factory, vê Introdução ao Azure Data Factory.

Neste tutorial, vais usar a interface de utilizador (UI) do Data Factory para criar um pipeline que copia e transforma dados de uma fonte Azure Data Lake Storage Gen2 para um sumidouro de Data Lake Storage Gen2 (ambos permitindo acesso apenas a redes selecionadas) usando o mapeamento do fluxo de dados no Data Factory Managed Rede Virtual. Você pode expandir o padrão de configuração neste tutorial ao transformar dados usando o fluxo de dados de mapeamento.

Neste tutorial, vai executar os seguintes passos:

  • Criar uma fábrica de dados.
  • Crie uma pipeline com uma atividade de fluxo de dados.
  • Crie um fluxo de dados de mapeamento com quatro transformações.
  • Executar um teste do pipeline.
  • Monitore 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.
  • Conta de armazenamento do Azure Usas o Data Lake Storage como repositórios de dados de fonte e destino. Se não tiver uma conta de armazenamento, veja Criar uma conta de armazenamento Azure para os passos necessários para criar uma. Certifique-se de que a conta de armazenamento permite o acesso apenas a partir de redes selecionadas.

O ficheiro que vamos transformar neste tutorial é moviesDB.csv, que pode ser encontrado neste site de conteúdo GitHub. Para recuperar o ficheiro de GitHub, copie o conteúdo para um editor de texto à sua escolha para o guardar localmente como um ficheiro .csv. Para carregar o ficheiro na sua conta de armazenamento, veja Upload blobs no portal Azure. Os exemplos farão referência a um contêiner chamado sample-data.

Criar uma fábrica de dados

Nesta etapa, você cria um data factory e abre a interface do usuário do Data Factory para criar um pipeline no data factory.

  1. Abre o Microsoft Edge ou o Google Chrome. Atualmente, apenas os navegadores Microsoft Edge e Google Chrome suportam a interface Data Factory.

  2. No menu à esquerda, selecione Criar um recurso>Analytics>Data Factory.

  3. Na página Nova fábrica de dados, em Nome, introduza ADFTutorialDataFactory.

    O nome da fábrica de dados tem de ser globalmente exclusivo. Caso receba uma mensagem de erro relacionada ao valor do nome, insira um nome diferente para a fábrica de dados (por exemplo, seunomeADFTutorialDataFactory). Para obter as regras de nomenclatura dos artefactos do Data Factory, veja Regras de nomenclatura do Data Factory.

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

  5. Em Grupo de Recursos, efetue um destes passos:

    • Selecione Utilizar existente e selecione um grupo de recursos existente na lista suspensa.
    • Selecione Criar novo e introduza 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 Localização, selecione uma localização para a fábrica de dados. Apenas os locais suportados aparecem na lista suspensa. Armazenamentos de dados (por exemplo, Armazenamento do Azure e Base de Dados SQL do Azure) e computações (por exemplo, Azure HDInsight) usados pela fábrica de dados podem estar noutras regiões.

  8. Selecione Criar.

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

  10. Selecione Abrir Azure Data Factory Studio para abrir a interface da Data Factory num separador separado.

Criar uma Azure IR na Data Factory Managed Rede Virtual

Neste passo, cria um Azure IR e ativa a Data Factory Managed Rede Virtual.

  1. No portal Data Factory, vá a Gerir e selecione Novo para criar um novo IR Azure.

    Captura de ecrã que mostra a criação de uma nova Azure IR.

  2. Na página de configuração do Runtime de Integração, escolha qual runtime de integração criar com base nos recursos necessários. Neste tutorial, selecione Azure, Auto-Hospedado e depois clique em Continue.

  3. Selecione Azure e depois clique em Continue para criar um runtime de integração Azure.

    Captura de ecrã que mostra uma nova Azure IR.

  4. Em Configuração de rede virtual (Pré-visualização), selecione Ativar.

    Captura de ecrã que mostra a ativação de um novo Azure IR.

  5. Selecione Criar.

Criar um pipeline com uma atividade de fluxo de dados

Nesta etapa, você criará um pipeline que contém uma atividade de fluxo de dados.

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

    Captura de tela que mostra a página inicial do data factory com o botão Orchestrate realçado.

  2. No painel de propriedades do pipeline, insira TransformMovies para o nome do pipeline.

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

  4. No pop-up Adicionar data flow, selecione Criar novo data flow e depois selecione Mapeamento Fluxo de Dados. Selecione OK quando terminar.

    Captura de ecrã que mostra o mapeamento Fluxo de Dados.

  5. Nomeie seu fluxo de dados como TransformMovies no painel de propriedades.

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

    Imagem do ecrã que mostra o slider de depuração do fluxo de dados.

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

Depois de criar seu fluxo de dados, você será enviado automaticamente para a tela de fluxo de dados. Neste passo, irá construir um fluxo de dados que pega no ficheiro moviesDB.csv em Data Lake Storage e agrega a média de audiência das comédias de 1910 a 2000. Depois irá escrever este ficheiro de volta no Data Lake Storage.

Adicionar a transformação de origem

Neste passo, configura o Data Lake Storage Gen2 como fonte.

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

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

  3. Selecione Azure Data Lake Storage Gen2 e depois selecione Continue.

  4. Selecione DelimitedText e, em seguida, selecione Continue.

  5. Nomeie seu conjunto de dados como MoviesDB. Na lista suspensa do serviço vinculado, selecione Novo.

  6. No ecrã de criação do serviço ligado, nomeie o seu serviço ligado Data Lake Storage Gen2 ADLSGen2 e especifique o 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.

  7. Certifique-se de ativar Autoria Interativa. Pode levar um minuto para ser ativado.

    Captura de tela que mostra a criação interativa.

  8. Selecione Testar ligação. Deve falhar porque a conta de armazenamento não permite habilitar o acesso a ela sem a criação e aprovação de um ponto de extremidade privado. Na mensagem de erro, você verá um link para criar um ponto de extremidade privado que você pode seguir para criar um ponto de extremidade privado gerenciado. Uma alternativa é ir diretamente para a guia Gestão e seguir as instruções nesta seção para criar um endpoint privado gerido.

  9. Mantenha a caixa de diálogo aberta e, em seguida, aceda à sua conta de armazenamento.

  10. Siga as instruções nesta seção para aprovar o link privado.

  11. Volte para a caixa de diálogo. Selecione Testar conexão novamente e selecione Criar para implantar o serviço vinculado.

  12. Na tela de criação do conjunto de dados, indique a localização do seu arquivo no campo Caminho do arquivo. Neste tutorial, o arquivo moviesDB.csv está localizado no contêiner sample-data. Como o ficheiro tem cabeçalhos, marque a caixa de seleção Primeira linha como cabeçalho. Selecione Da conexão/armazenamento para importar o esquema de cabeçalho diretamente do arquivo no armazenamento. Selecione OK quando terminar.

    Captura de tela que mostra o caminho de origem.

  13. Se o cluster de depuração tiver sido iniciado, vá para a guia 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 ecrã que mostra o separador Pré-visualização de Dados.

Criar um ponto final privado gerido

Se você não usou o hiperlink quando testou a conexão anterior, siga o caminho. Agora, precisa criar um ponto de extremidade privado gerido que será ligado ao serviço vinculado que criou.

  1. Vá para a guia Gerenciar .

    Nota

    A guia Gerenciar pode não estar disponível para todas as instâncias do Data Factory. Se não o vires, podes aceder a pontos de extremidade privados selecionando Author>Connections>Private Endpoint.

  2. Vá para a seção Pontos de extremidade privados geridos.

  3. Selecione + Novo em Pontos de extremidade privados gerenciados.

    Captura de ecrã que mostra o botão

  4. Selecione o bloco Azure Data Lake Storage Gen2 da lista e selecione Continue.

  5. Introduza o nome da conta de armazenamento que criou.

  6. Selecione Criar.

  7. Depois de alguns segundos, você verá que o link privado criado precisa de uma aprovação.

  8. Selecione o ponto de extremidade privado que você criou. Você pode ver um hiperlink que o levará a aprovar o ponto de extremidade privado no nível da conta de armazenamento.

    Captura de tela que mostra o painel Gerenciar ponto de extremidade privado.

  1. Na conta de armazenamento, vá para Conexões de ponto de extremidade privadas na secção Definições.

  2. Selecione a caixa de seleção junto ao ponto de extremidade privado que criou e selecione Aprovar.

    Captura de tela que mostra o botão Aprovar ponto de extremidade privado.

  3. Adicione uma descrição e selecione Sim.

  4. Volte para a seção de Pontos de Extremidade Privados Geridos da guia Gerir no Data Factory.

  5. Após cerca de um minuto, verá a aprovação aparecer no seu endpoint privado.

Adicionar a transformação do filtro

  1. Ao lado do nó de origem no painel de fluxo de dados, selecione o ícone de mais para adicionar uma nova transformação. A primeira transformação que você adicionará é um Filtro.

    Captura de ecrã que mostra a adição de um filtro.

  2. Nomeie sua transformação de filtro como FilterYears. Selecione a caixa de expressão ao lado de Filtrar em para abrir o construtor de expressões. Aqui você especificará sua condição de filtragem.

    Captura de tela que mostra FilterYears.

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

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

    • Para descobrir quais filmes são comédias, você pode usar a rlike() função para encontrar o 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 tela que mostra a expressão de filtro.

    • Selecione Salvar e concluir depois de terminar a expressão.

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

Adicionar a transformação agregada

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

    Captura de ecrã que mostra a adição do agregado.

  2. Nomeie a sua transformação agregada AggregateComedyRating. Na guia Agrupar por, selecione ano na caixa suspensa para agrupar as agregações pelo ano de lançamento do filme.

    Captura de tela que mostra o grupo agregado.

  3. 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 o nome da coluna agregada.

  4. Para obter a média da coluna Classificação, use a função avg() agregada. 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 tem a seguinte aparência:

    avg(toInteger(Rating))

  5. Selecione Salvar e concluir depois de terminar.

    Captura de tela que mostra salvar a agregação.

  6. Vá para o separador Pré-visualização de Dados para verificar a saída da transformação. Observe que apenas duas colunas estão lá, ano e AverageComedyRating.

Adicionar a transformação do coletor

  1. Em seguida, pretende adicionar uma transformação Sink sob Destination.

    Captura de tela que mostra a adição de uma pia.

  2. Nomeie a sua pia Sink. Selecione Novo para criar o conjunto de dados do coletor.

    Captura de tela que mostra a criação de uma pia.

  3. Na página Novo conjunto de dados, selecione Azure Data Lake Storage Gen2 e depois selecione Continue.

  4. Na página Selecionar formato, selecione DelimitedText e, em seguida, selecione Continuar.

  5. Nomeie o conjunto de dados de destino como MoviesSink. Para serviço vinculado, escolha o mesmo serviço vinculado ADLSGen2 que você criou para a transformação de origem. 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. Marque a caixa de seleção Primeira linha como cabeçalho e selecione Nenhum para Importação do esquema. Selecione OK.

    Captura de tela que mostra o caminho da pia.

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

Executar e monitorar o fluxo de dados

Você pode depurar um pipeline antes de publicá-lo. Nesta etapa, você aciona 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 gravará dados no destino do coletor.

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

  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 ser inicializada. Pode acompanhar o progresso através da Aba Saída. Depois que a execução for bem-sucedida, selecione o ícone de lupa para obter detalhes da execução.

  3. Na página de detalhes, você pode ver o número de linhas e o tempo gasto em cada etapa de transformação.

    Captura de ecrã que mostra uma execução de monitoramento.

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

Se você seguiu este tutorial corretamente, você deve ter escrito 83 linhas e 2 colunas em sua pasta de coletor. Você pode verificar a correção dos dados ao verificar o seu armazenamento de blobs.

Resumo

Neste tutorial, usaste a interface do Data Factory para criar um pipeline que copia e transforma dados de uma fonte Data Lake Storage Gen2 para um sumidouro Data Lake Storage Gen2 (ambos permitindo acesso apenas a redes selecionadas) usando o mapeamento do fluxo de dados no Data Factory Managed Rede Virtual.