Sobre a pesquisa de linhagem multirregional

A pesquisa de linhagem multirregional no Knowledge Catalog (antigo Dataplex Universal Catalog) permite rastrear recursos de dados em Google Cloud projetos e regiões para criar gráficos de linhagem completos. Essa visualização unificada ajuda a manter a governança de dados e analisar as dependências em toda a organização quando os pipelines ultrapassam limites geográficos. É possível descobrir e conectar gráficos inter-regionais usando a automação recomendada do lado do servidor com a API searchLineageStreaming (pré-lançamento) ou o fan-out do lado do cliente com a API searchLinks. Para instruções sobre como usar a API de streaming, consulte Pesquisar linhagem multirregional usando automação do lado do servidor.

Por padrão, a linhagem de dados no Knowledge Catalog é um serviço regional. Sempre que seus dados são movidos ou transformados, os dados de linhagem resultantes, como links, processos e eventos, são armazenados na região específica em que essa ação ocorreu. No entanto, os pipelines de dados do mundo real geralmente abrangem vários projetos e regiões doGoogle Cloud . Por exemplo, você pode ter uma tabela do BigQuery em us-central1 que copia dados para um bucket de armazenamento em europe-west1, exigindo uma pesquisa multirregional para rastrear seus recursos de dados entre esses limites.

Para entender a descoberta de linhagem multirregional, é útil entender como o Knowledge Catalog lida com a travessia de gráficos:

  • Critérios raiz: o ponto de partida da pesquisa de linhagem, definido por um ou mais nomes de recursos (como uma tabela do BigQuery ou um tópico do Pub/Sub) ou campos de coluna detalhados.

  • Direção: a orientação da travessia do gráfico em relação aos critérios raiz. É possível pesquisar upstream (para ver de onde os dados vieram) ou downstream (para ver para onde os dados estão indo).

  • Pesquisa em largura: o mecanismo de arquitetura usado para encontrar nós conectados. A pesquisa percorre o gráfico de linhagem camada por camada, calculando com precisão a profundidade de execução de cada recurso conectado em limites regionais.

Como os métodos de pesquisa multirregional se comparam?

Embora os dois métodos permitam que você monte uma visualização entre regiões dos seus dados, eles lidam com o trabalho pesado de maneira diferente:

Recurso Automação do lado do servidor
API searchLineageStreaming

API searchLinks de fan-out do lado do cliente
Modelo de execução Automação do lado do servidor: o mecanismo de roteamento do Google Cloud atravessa várias regiões de forma nativa. Orquestração do lado do cliente: o script do aplicativo precisa repetir e gerenciar as solicitações manualmente.
Sobrecarga de solicitação Solicitação de API única: uma única chamada HTTP POST inicia a pesquisa multirregional. Várias solicitações de API: requer uma chamada HTTP separada para cada região e cada camada de gráfico.
Processamento de respostas Stream em tempo real: os resultados são enviados ao cliente conforme são encontrados, evitando tempos limite. Payloads estáticos: as matrizes JSON individuais precisam ser recebidas, coletadas e mescladas manualmente.
Gráficos profundos (mais de duas camadas) Processa automaticamente gráficos de linhagem profundos e aninhados em até 100 níveis. Sofre com o problema de consulta N+1; requer idas e voltas iterativas e lentas do cliente.

Escolher o método de pesquisa multirregional correto

Analise os cenários a seguir para determinar qual método de pesquisa multirregional se encaixa na sua carga de trabalho.

Escolha o método da API de streaming para os seguintes casos de uso:

  • Trace gráficos profundos ou complexos: seus dados se movem por várias tabelas, buckets ou pipelines intermediários em diferentes regiões, exigindo uma travessia de vários níveis (maxDepth maior que 2).

  • Rastrear a linhagem no nível da coluna: você quer rastrear campos em várias regiões ou usar pesquisas com caracteres curinga (*) para extrair todas as dependências de coluna de uma só vez.

  • Manter o código leve: você prefere fazer uma única chamada de API e deixar que o Google Cloud processe o roteamento, a eliminação de duplicação e a montagem do gráfico.

  • Exigir metadados de pipeline: você quer recuperar opcionalmente detalhes estruturais sobre os processos que executam seus pipelines no mesmo payload de solicitação.

Escolha o método de fan-out do lado do cliente para os seguintes cenários:

  • Você só rastreia linhagens superficiais de salto único: seu gráfico de linhagem não é complexo, e você só precisa procurar links diretos de pai ou filho (maxDepth igual a 1) em um número pequeno e fixo de regiões conhecidas.

  • Você está trabalhando em sistemas legados rígidos: tem um aplicativo de governança de dados criado com base no endpoint SearchLinks padrão e quer manter a compatibilidade estrutural com versões anteriores sem implementar consumidores de resposta de streaming.

A seguir