Ao gerenciar dados em uma organização complexa, entender a linhagem de dados é essencial para uma boa governança de dados e um gerenciamento eficaz de dados na nuvem. Este guia explica como usar a pesquisa multirregional no Knowledge Catalog (antigo Dataplex Universal Catalog) para rastrear seus dados em limites geográficos.
Por padrão, a linhagem de dados no Knowledge Catalog é um serviço regional. Sempre que os 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 a ação ocorreu.
No entanto, os pipelines de dados do mundo real geralmente abrangem vários Google Cloud projetos
e regiões. Por exemplo, você pode ter uma tabela do BigQuery em us-central1 que copia dados para um bucket de armazenamento em europe-west1. Para rastrear seus recursos de dados nesses limites e criar gráficos de linhagem completos, é necessário realizar uma pesquisa multirregional.
O Knowledge Catalog oferece duas maneiras de descobrir e conectar esses gráficos de linhagem multirregionais:
- O método de automação do lado do servidor que usa a
searchLineageStreamingAPI (prévia) – recomendado - O método de distribuição de dados do lado do cliente que usa a
searchLinksAPI
Conceitos básicos da pesquisa de linhagem multirregional
Para entender a descoberta de linhagem multirregional, é útil entender como o sistema processa 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 a montante (para ver de onde os dados vieram) ou a jusante (para ver para onde os dados estão indo).
Pesquisa em largura: o mecanismo arquitetônico usado para encontrar nós conectados. A pesquisa atravessa 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 multirregional dos seus dados, eles processam o trabalho pesado de maneira diferente:
| Recurso | Automação do lado do servidor API searchLineageStreaming |
Distribuição de dados do lado do cliente API searchLinks |
|---|---|---|
| Modelo de execução | Automação do lado do servidor: o Google Cloud mecanismo de roteamento atravessa várias regiões nativamente. | Orquestração do lado do cliente: o script do aplicativo precisa fazer um loop manual e gerenciar solicitações. |
| 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 à medida que são encontrados, evitando tempos limite. | Payloads estáticos: matrizes JSON individuais precisam ser recebidas, coletadas, e mescladas manualmente. |
| Gráficos profundos (mais de duas camadas) | Processa gráficos de linhagem aninhados e profundos automaticamente em até 100 níveis. | Sofre com o problema de consulta N+1; requer viagens de ida e volta iterativas e lentas do cliente. |
Escolha o método de pesquisa multirregional certo
Analise os cenários a seguir para determinar qual método de pesquisa multirregional se ajusta à sua carga de trabalho.
Escolha o método de API de streaming para os seguintes casos de uso:
Rastrear gráficos profundos ou complexos: seus dados se movem por várias tabelas, buckets ou pipelines intermediários em diferentes regiões, exigindo travessia de vários níveis (
maxDepthmaior que 2).Rastrear a linhagem no nível da coluna: você quer rastrear campos em regiões ou aproveitar pesquisas de caractere curinga (
*) para extrair todas as dependências de coluna de uma só vez.Manter um código leve: você prefere fazer uma única chamada de API e deixar Google Cloud o roteamento, a remoção de duplicação e a montagem de gráficos.
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 distribuição de dados do lado do cliente para os seguintes cenários:
Você só rastreia linhagem superficial de salto único: seu gráfico de linhagem não é complexo e você só precisa pesquisar links diretos pai ou filho (
maxDepthigual a 1) em um número pequeno e fixo de regiões conhecidas.Você está trabalhando em sistemas legados rigorosos: você tem um aplicativo de governança de dados criado em grande parte no endpoint
SearchLinkspadrão e quer manter a compatibilidade estrutural com versões anteriores sem implementar consumidores de resposta de streaming.
A seguir
Saiba como pesquisar linhagem multirregional usando a automação do lado do servidor.
Saiba como pesquisar linhagem multirregional usando a distribuição de dados do lado do cliente.