Usar a linhagem de dados no Dataflow

A linhagem de dados é um recurso do Dataflow que permite acompanhar como os dados se movimentam nos sistemas: origem, destino e quais transformações são aplicadas a eles.

Cada pipeline executado usando o Dataflow tem vários recursos de dados associados. A linhagem de um ativo de dados inclui a origem, o que acontece com ele e para onde ele se move ao longo do tempo. Com a linhagem de dados, é possível acompanhar o movimento de ponta a ponta dos seus recursos de dados, da origem ao destino final.

Quando você ativa a linhagem de dados para seus jobs do Dataflow, o Dataflow captura eventos de linhagem e os publica na API Data Lineage do Dataplex.

Para acessar informações de linhagem pelo Dataplex, consulte Usar a linhagem de dados com Google Cloud sistemas.

Antes de começar

Configure o projeto:

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. Make sure that billing is enabled for your Google Cloud project.

  3. Enable the Dataplex, BigQuery, and Data lineage APIs.

    Enable the APIs

  4. Make sure that billing is enabled for your Google Cloud project.

  5. Enable the Dataplex, BigQuery, and Data lineage APIs.

    Enable the APIs

No Dataflow, também é necessário ativar a linhagem no nível do job. Consulte Ativar a linhagem de dados no Dataflow neste documento.

Funções exigidas

Para receber as permissões necessárias para visualizar gráficos de visualização de linhagem, peça ao seu administrador para conceder a você os seguintes papéis do IAM:

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Também é possível conseguir as permissões necessárias por meio de papéis personalizados ou de outros papéis predefinidos.

Para mais informações sobre papéis de linhagem de dados, consulte Papéis predefinidos para a linhagem de dados.

Suporte e limitações

A linhagem de dados no Dataflow tem as seguintes limitações:

  • A linhagem de dados é compatível com as versões 2.63.0 e mais recentes do SDK do Apache Beam.
  • É necessário ativar a linhagem de dados para cada job.
  • A captura de dados não é instantânea. Pode levar alguns minutos para que os dados de linhagem do job do Dataflow apareçam no Dataplex.
  • As seguintes fontes e coletores são compatíveis:

    • Apache Kafka
    • BigQuery
    • Bigtable
    • Cloud Storage
    • JDBC (Java Database Connectivity)
    • Pub/Sub
    • Spanner

    Os modelos do Dataflow que usam essas origens e destinos também capturam e publicam eventos de linhagem automaticamente.

Ativar a linhagem de dados no Dataflow

É necessário ativar a linhagem no nível do job. Para ativar a linhagem de dados, use a enable_lineage opção de serviço do Dataflow da seguinte maneira:

Java

--dataflowServiceOptions=enable_lineage=true

Python

--dataflow_service_options=enable_lineage=true

Go

--dataflow_service_options=enable_lineage=true

gcloud

Use o comando gcloud dataflow jobs run com a opção additional-experiments. Se você estiver usando modelos Flex, use o comando gcloud dataflow flex-template run.

--additional-experiments=enable_lineage=true

Também é possível especificar um ou ambos os parâmetros a seguir com a opção de serviço:

  • process_id: um identificador exclusivo que o Dataplex usa para agrupar execuções de jobs. Se não for especificado, o nome do job será usado.
  • process_name: um nome legível para o processo de linhagem de dados. Se não for especificado, o nome do job com o prefixo "Dataflow " será usado.

Especifique estas opções da seguinte maneira:

Java

--dataflowServiceOptions=enable_lineage=process_id=PROCESS_ID;process_name=DISPLAY_NAME

Python

--dataflow_service_options=enable_lineage=process_id=PROCESS_ID;process_name=DISPLAY_NAME

Go

--dataflow_service_options=enable_lineage=process_id=PROCESS_ID;process_name=DISPLAY_NAME

gcloud

--additional-experiments=enable_lineage=process_id=PROCESS_ID;process_name=DISPLAY_NAME

Visualizar a linhagem no Dataplex

A linhagem de dados fornece informações sobre as relações entre os recursos do projeto e os processos que os criaram. É possível conferir as informações de linhagem de dados no console do Google Cloud na forma de um gráfico ou de uma única tabela. Também é possível recuperar informações de linhagem de dados da API Data Lineage no formato de dados JSON.

Para mais informações, consulte Usar a linhagem de dados com Google Cloud sistemas.

Desativar a linhagem de dados no Dataflow

Se a linhagem de dados estiver ativada para um job específico e você quiser desativá-la, cancele o job atual e execute uma nova versão sem a opção de serviço enable_lineage.

Faturamento

O uso da linhagem de dados no Dataflow não afeta sua fatura, mas pode gerar cobranças adicionais na fatura do Dataplex. Para mais informações, consulte Considerações sobre a linhagem de dados e Preços do Dataplex.

A seguir