A linhagem de dados ajuda a acompanhar como os dados se movimentam nos sistemas. É possível conferir a origem, os destinos e as transformações aplicadas a um recurso de dados.
É possível conferir informações de linhagem no console Google Cloud para ativos do catálogo universal do Dataplex, do BigQuery e da Vertex AI, ou recuperá-las usando a API Data Lineage.
Por que você precisa da linhagem de dados
Grandes conjuntos de dados geralmente exigem a transformação de dados em vários formatos para projetos específicos, como arquivos de texto, tabelas, relatórios, painéis e modelos.
Por exemplo, uma loja on-line pode ter um pipeline de dados com o seguinte fluxo:
Um job do Dataflow lê eventos de compra brutos de um tópico do Pub/Sub, detalhes do produto de arquivos do Cloud Storage e informações do cliente de uma tabela do BigQuery. O job une essas informações e cria uma tabela
purchases
no BigQuery.Os jobs subsequentes do BigQuery transformam a tabela
purchases
para criar tabelas menores e agregadas, comoregion
oubrand
, e calcular novas colunas, comototal_profit
.Os analistas usam essas tabelas para gerar relatórios e painéis no Looker.
Esse cenário comum pode apresentar vários desafios:
Os consumidores de dados não têm um método de autoatendimento para verificar se os dados vêm de uma fonte confiável.
Os engenheiros de dados têm dificuldade em encontrar a causa raiz dos problemas porque não conseguem rastrear de forma confiável todas as transformações de dados. Por exemplo, se um analista encontrar um erro em uma coluna
total_profit
, será difícil rastrear a origem dele.Engenheiros e analistas de dados não conseguem avaliar totalmente o impacto potencial de modificar ou excluir tabelas. Por exemplo, antes de descontinuar uma coluna
product_id
, é necessário identificar todas as colunas downstream dependentes para evitar a quebra de relatórios.Os administradores de dados não têm visibilidade de como os dados sensíveis são usados em toda a organização, o que dificulta a conformidade com os requisitos regulatórios.
A linhagem de dados resolve esses problemas fornecendo um mapa visual e claro da jornada dos seus dados. Com a linhagem de dados, é possível fazer o seguinte:
Entenda como os dados são extraídos e transformados usando gráficos de linhagem.
Rastrear erros em entradas e operações de dados até as causas raízes.
Melhore o gerenciamento de mudanças com a análise de impacto para evitar tempo de inatividade ou erros inesperados, entenda as dependências e colabore com as partes interessadas.
Fluxo de trabalho de linhagem de dados
O fluxo de trabalho de linhagem de dados inclui as seguintes etapas:
Fontes de dados e ingestão: as informações de linhagem das suas fontes de dados iniciam todo o processo. Para mais informações, consulte Fontes de linhagem.
Google Cloud serviços: quando a API Data Lineage está ativada, os serviços compatíveis, como BigQuery e Dataflow, informam automaticamente os eventos de linhagem sempre que os dados são movidos ou transformados.
Fontes personalizadas: para sistemas que não são compatíveis automaticamente com as integrações doGoogle Cloud , use a API Data Lineage para registrar manualmente as informações de linhagem. Recomendamos importar eventos formatados de acordo com o padrão OpenLineage.
Plataforma de linhagem: essa plataforma central ingere, modela e armazena todos os dados de linhagem. Para mais informações, consulte Modelo e granularidade de informações de linhagem.
API Data Lineage: atua como o único ponto de entrada para todas as informações de linhagem recebidas. Ele usa um modelo de dados hierárquico composto por três conceitos principais: processo, execução e evento.
Processamento e armazenamento: a plataforma processa os dados recebidos e os armazena em bancos de dados confiáveis e otimizados para consultas.
Experiência do usuário: é possível interagir com as informações de linhagem armazenadas de duas maneiras principais:
Exploração visual: no console Google Cloud , um serviço de front-end busca e renderiza os dados de linhagem como um gráfico ou uma lista interativa. Isso é compatível com o Dataplex Universal Catalog, o BigQuery e a Vertex AI (para modelos, conjuntos de dados, visualizações do Feature Store e grupos de recursos). Isso é ideal para explorar visualmente a jornada dos seus dados. Para mais informações, consulte Visualizações de linhagem no console do Google Cloud .
Acesso programático: usando um cliente de API, você pode se comunicar diretamente com a API Data Lineage para automatizar o gerenciamento de linhagem. Isso permite gravar informações de linhagem de fontes personalizadas. Também é possível ler e consultar os dados de linhagem armazenados para uso em outros aplicativos ou para criar relatórios personalizados.
Origens de linhagem
É possível preencher informações de linhagem no Dataplex Universal Catalog das seguintes maneiras:
- Automaticamente de serviços Google Cloud integrados
- Manualmente, usando a API Data Lineage para fontes personalizadas
- Importando eventos do OpenLineage
Rastreamento automatizado da linhagem de dados
Quando você ativa a API Data Lineage,os sistemas que oferecem suporte a essa funcionalidade começam a informar a movimentação de dados. Google Cloud Cada sistema integrado pode enviar informações de linhagem para um intervalo diferente de fontes de dados.
BigQuery
Quando você ativa a linhagem de dados no projeto do BigQuery, o Dataplex Universal Catalog registra automaticamente informações de linhagem para o seguinte:
Novas tabelas criadas como resultado dos seguintes jobs do BigQuery:
- Jobs de cópia
- Jobs de carregamento que usam um URI do Cloud Storage
- Jobs de consulta que usam a seguinte linguagem de definição de dados (DDL) no GoogleSQL:
Tabelas atuais quando você usa as seguintes instruções de linguagem de manipulação de dados (DML) no GoogleSQL:
SELECT
em relação a qualquer um dos tipos de tabela listados:INSERT SELECT
MERGE
UPDATE
DELETE
Os jobs de cópia, consulta e carregamento do BigQuery são representados como processos.
Para ver os detalhes do processo, clique em
no gráfico de linhagem.
Cada processo contém o job_id do BigQuery na lista de atributos do job mais recente do BigQuery.
Outros serviços
A linhagem de dados é compatível com a integração aos seguintes serviços do Google Cloud :
Linhagem de dados para fontes de dados personalizadas
É possível usar a API Data Lineage para registrar manualmente informações de linhagem de qualquer fonte de dados que não seja compatível com os sistemas integrados.
O Dataplex Universal Catalog pode criar gráficos de linhagem para linhagem registrada manualmente se você usar um
fullyQualifiedName
que corresponda aos nomes totalmente
qualificados das entradas atuais do Dataplex Universal Catalog. Se você quiser registrar
a linhagem de uma fonte de dados personalizada, primeiro crie uma
entrada personalizada.
Cada processo de uma fonte de dados personalizada pode conter uma chave sql
na lista de atributos. O valor dessa chave é usado para renderizar um destaque de código no painel de detalhes do gráfico de linhagem de dados. A instrução SQL é mostrada como foi
fornecida. Você é responsável por filtrar informações sensíveis. O nome da chave sql
diferencia maiúsculas de minúsculas.
OpenLineage
Se você já usa o OpenLineage para coletar informações de linhagem de outras fontes de dados, é possível importar eventos do OpenLineage para o Dataplex Universal Catalog e conferir esses eventos no console Google Cloud . Para mais informações, consulte Integrar com o OpenLineage.
Limitações
Confira a seguir as limitações da linhagem de dados:
Todas as informações de linhagem são mantidas no sistema por apenas 30 dias.
As informações de linhagem persistem mesmo depois que você exclui a fonte de dados relacionada. Por exemplo, se você excluir uma tabela do BigQuery, ainda poderá ver a linhagem dela pela API e pelo console por até 30 dias.
Limitações da linhagem no nível de coluna
A linhagem no nível da coluna tem as seguintes limitações adicionais:
A linhagem no nível da coluna não é coletada para jobs de carregamento do BigQuery ou para rotinas.
A linhagem upstream no nível da coluna não é coletada para tabelas externas.
A linhagem no nível da coluna não é coletada se um job criar mais de 1.500 links nesse nível. Nesses casos, apenas a linhagem no nível da tabela é coletada.
Não há uma API para criar, ler, atualizar, excluir ou pesquisar linhagem no nível da coluna.
O suporte a tabelas particionadas é limitado porque colunas de particionamento como
_PARTITIONDATE
e_PARTITIONTIME
não são reconhecidas no gráfico de linhagem.Limitações do console:
O percurso do gráfico de linhagem é limitado a uma profundidade de 20 níveis e 10.000 links em cada direção.
O linhagem no nível da coluna só é buscada na região em que a tabela raiz está localizada. Não há suporte para linhagem entre regiões na visualização de gráfico.
Preços
O Dataplex Universal Catalog usa a SKU de processamento premium para cobrar pela linhagem de dados. Para saber mais informações, consulte Preços.
Para separar as cobranças de linhagem de dados de outras cobranças na SKU de processamento premium do catálogo universal do Dataplex, no relatório de faturamento do Cloud, use o rótulo
goog-dataplex-workload-type
com o valorLINEAGE
.Se você chamar a API Data Lineage
Origin
sourceType
com um valor diferente deCUSTOM
, isso vai gerar custos adicionais.
A seguir
Saiba como rastrear a linhagem de dados de uma cópia de tabela do BigQuery e jobs de consulta.
Saiba como usar a linhagem de dados com sistemas Google Cloud .
Saiba mais sobre as visualizações de linhagem no console do Google Cloud .
Conheça a API Data Lineage.
Para informações administrativas, consulte Considerações sobre linhagem e registro de auditoria de linhagem de dados.