Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
O Unity Catalog captura automaticamente a linhagem de dados em tempo de execução para consultas executadas no Azure Databricks. No entanto, poderá ter cargas de trabalho que são executadas fora do Azure Databricks (por exemplo, ETL na primeira milha ou BI na última milha). O Catálogo Unity permite adicionar metadados de linhagem externa para aumentar a linhagem de dados do Azure Databricks que ele captura automaticamente, oferecendo uma exibição de linhagem de ponta a ponta no Catálogo Unity. Isto é útil quando se quer captar de onde vieram os dados (por exemplo, Salesforce ou MySQL) antes de serem ingeridos no Unity Catalog ou quando os dados são consumidos fora do Unity Catalog (por exemplo, Tableau ou Power BI).
Pode adicionar linhagem externa de duas formas:
- De forma manual, usando a IU do Catalog Explorer, as APIs de Metadados Externos e de Linhagem Externa, ou o SDK da Databricks para Python.
- Automaticamente, usando os pipelines de ingestão geridos do Lakeflow Connect, que registam a linhagem dos dados das suas tabelas de origem para as tabelas de destino no Unity Catalog. Consulte Linhagem dos dados de origem para pipelines de ingestão geridos.
O gráfico de linhagem seguinte mostra duas tabelas externas no MySQL e PostgreSQL que foram ingeridas no Azure Databricks como uma tabela gerida pelo Unity Catalog, com colunas transformadas numa release_date coluna e depois consumidas por um relatório externo.
Para informações gerais sobre a linhagem de dados no Azure Databricks, veja Linhagem no Catálogo Unity.
Requerimentos
Para adicionar metadados de linhagem externa no Unity Catalog, você deve ter os seguintes privilégios, dependendo da tarefa específica:
- Para criar um objeto externo protegível por metadados no Unity Catalog, deve ter o
CREATE EXTERNAL METADATAprivilégio na metastore. - Para especificar relações de linhagem entre um objeto de metadados externos e qualquer outro objeto do Unity Catalog, você deve ter o
MODIFYprivilégio no objeto de metadados externos. - Para especificar uma relação de linhagem downstream para um objeto Unity Catalog, você deve ter privilégios de leitura no objeto (por exemplo,
SELECTem uma tabela). - Para especificar uma relação de linhagem upstream para um objeto Unity Catalog, você deve ter privilégios de gravação no objeto (por exemplo,
MODIFYem uma tabela).
Adicionar metadados externos de linhagem
Para adicionar metadados de linhagem externa:
Crie um objeto externo com metadados protegível no Unity Catalog.
Este objeto representa uma entidade em um sistema externo, como um painel no Tableau.
Configure uma relação de linhagem entre o objeto de metadados externos e outro objeto Unity Catalog, como uma tabela, modelo, caminho ou outro objeto de metadados externos.
Quando você tiver criado relações de linhagem, o objeto de metadados externos aparecerá na exibição de gráfico de linhagem.
Pode criar objetos de metadados externos e configurar relações de linhagem usando a interface do Catalog Explorer. Para começar a partir de um grafo de linhagem existente, clique em Criar linhagem externa no canto superior direito do gráfico. Também pode começar pela secção de Dados Externos no Explorador de Catálogos, conforme descrito nas secções seguintes.
Criar um objeto de metadados externo
Você pode criar um objeto de metadados externos usando o Catalog Explorer ou a API de Metadados Externos.
Para usar o Catalog Explorer para criar um objeto de metadados externo:
No seu espaço de trabalho do Azure Databricks, clique no
Catálogo.
Clique no botão Dados >Externos, vá ao separador Metadados Externos e clique em Criar Metadados Externos.
Especifique os detalhes dos metadados.
Obrigatório
- Nome: Introduza um nome legível para humanos que ajude os utilizadores do Azure Databricks a perceber o que estão a ver na linhagem. Os objetos de metadados externos são objetos protegidos pelo Unity Catalog, pelo que o nome deve seguir as regras de nomeação dos objetos do Unity Catalog. Consulte Requisitos de nomeação de objetos securáveis.
- Tipo de sistema: Selecione na lista de dados externos comuns e sistemas de BI. Se não encontrar o seu, selecione Personalizado.
- Tipo de entidade: insira o tipo de objeto, como "tabela" ou "painel".
Opcional:
- URL: insira a URL do objeto se quiser que os visualizadores do gráfico de linhagem possam clicar no ativo externo (como um painel do Tableau, por exemplo).
- Descrição
Avançado:
- Colunas: Se você quiser fazer o mapeamento em nível de coluna desse objeto externo para outro objeto do Unity Catalog, insira os nomes das colunas. Selecione UI para inseri-los um de cada vez ou Entrada de texto para inserir uma lista delimitada por vírgulas em uma única caixa de texto.
- Propriedades: Se houver outras propriedades que você deseja rastrear na linhagem, insira-as como pares chave-valor JSON. Você pode usar a interface do usuário para inserir cada par chave-valor ou inserir um objeto JSON completo.
Clique em Criar.
Uma caixa de diálogo oferece a opção de exibir o objeto de metadados externos ou criar relações de linhagem para o objeto.
Crie relações de linhagem
Você pode criar relações de linhagem usando o Catalog Explorer, a API de Linhagem Externa ou o SDK do Databricks para Python.
Para adicionar relações entre um objeto de metadados externo e outros objetos do Unity Catalog:
Siga o prompt mencionado acima ou localize o objeto de metadados externos existente no Catalog Explorer:
- Clique no
Catálogo
- Clique no botão Dados externos >
- Vá para a guia Metadados externos e selecione o objeto de metadados externos.
- Clique no
Clique em Criar relação de linhagem.
Selecione se deseja criar uma relação upstream ou downstream.
Insira o tipo de objeto para o qual você deseja criar a relação:
- Tabela: Selecione a tabela usando a caixa de diálogo de pesquisa.
- Modelo: selecione o modelo usando a caixa de diálogo de pesquisa e, em seguida, selecione a versão do modelo.
- Caminho: Para volumes ou locais externos, introduza o caminho.
- Metadados externos: selecione o objeto de metadados externos no menu suspenso.
(Opcional) Clique em Avançado para adicionar:
- Mapeamentos de coluna entre o objeto de metadados externos e o objeto de origem ou destino.
- Outros metadados em pares de chave e valor JSON. Por exemplo, você pode usá-los para inserir o texto da consulta que criou uma tabela a partir do objeto de metadados externos ou anotações que explicam o fluxo de trabalho externo que gerou a relação.
Clique em Criar.
Agora você pode ver a relação de linhagem externa na guia Linhagem dos objetos relacionados.
Modele relações de linhagem externa
Quando adiciona linhagem externa manualmente, use os seguintes padrões para modelar relações mais complexas:
- Ligue duas tabelas do Unity Catalog: Para especificar uma relação de linhagem entre duas tabelas que estejam ambas registadas no Unity Catalog, crie um objeto de metadados externo que fique entre elas. Especifique uma tabela a montante do objeto de metadados externo e a outra a jusante, de modo a que apareçam ligadas no gráfico de linhagem.
- Adicionar múltiplos níveis de linhagem: Para anotar dados que passam por vários sistemas antes de entrarem no Azure Databricks, crie múltiplos objetos de metadados externos e configure relações de linhagem externas entre cada um deles.
- Adicionar linhagem ao nível das colunas: Especifique os nomes das colunas quando criar o objeto de metadados externo, depois mapeie as colunas de origem e destino ao configurar a relação de linhagem.
Limitations
- A linhagem externa não está registada nas tabelas do sistema de linhagem (
system.access.table_lineageesystem.access.column_lineage). - Pode criar até 10.000 objetos de metadados externos e 100.000 relações de linhagem externa por metastore. Consulte Limites de recursos.