Exportação da linhagem de dados para o formato d OpenLineage
Exporte a linhagem de dados para o formato de carga útil do Protocolo de Linha de Dados ( OpenLineage ) e integre a linhagem de dados a plataformas de terceiros compatíveis com o padrão de Linha de Dados ( OpenLineage ).
Visão geral
Quando você exporta a linhagem de dados para o formato de arquivo de dados de linha de vida ( OpenLineage ), ela é exportada como arquivos.json. Os arquivos de exportação estão em conformidade com o padrão OpenLineage, conforme descrito na API OpenLineage.
São criados os seguintes tipos de carga útil:
DataSet Event- para capturar recursos de linhagem, como tabelas ou relatórios, e seus metadados.RunEvent- para capturar as relações de linhagem em tempo de execução e os metadados das tarefas de transformação.Job Event- para registrar as relações de linhagem de projeto e os metadados das tarefas de transformação.
As seguintes facetas foram criadas para capturar informações específicas sobre metadados de linhagem e ativos:
- Facetas do conjunto de dados
- Faceta de documentação do conjunto de dados para documentar a descrição do conjunto de dados.
- Faceta “Tipo de conjunto de dados” para documentar o tipo do conjunto de dados (FILE|STREAM|TABLE|VIEW).
- Faceta “Fonte de dados” para identificar a definição da fonte de dados do conjunto de dados.
- Faceta “Conjunto de dados do esquema” para descrever o esquema de um determinado conjunto de dados, por exemplo, nomes de colunas, tipos e descrições de uma tabela.
- Faceta de tag para sinalizadores de linhagem de documentos.
- Facetas de trabalho ou execução
- Faceta de documentação da função para documentar a descrição da função.
- Faceta “Tipo de trabalho” para documentar o tipo do trabalho.
- Faceta de código-fonte para documentar o código-fonte da tarefa.
- Faceta de linhagem de colunas para descrever a linhagem de colunas entre ativos.
Fontes de dados compatíveis para exportação de linhagem
A linhagem de dados dessas fontes pode ser exportada para o formato do Sistema de Linhagem de Dados ( OpenLineage ):
- Amazon RDS for Oracle
- Google BigQuery
- Greenplum
- IBM Cloud Databases for PostgreSQL
- IBM DataStage for Cloud Pak for Data
- IBM Db2 on Cloud
- Banco de Dados SQL do Microsoft Azure
- Microsoft Power BI (Azure)
- Microsoft SQL Server
- Microsoft SQL Server Integration Services (SSIS)
- Oracle
- Qlik Sense
- Snowflake
- Tableau
- Teradata
Formato dos arquivos.json gerados
Conjunto de dados
Veja o formato de exemplo do arquivo.json gerado para um conjunto de dados:
{
"eventTime": "2026-04-29T11:20:20.523Z",
"producer": "https://github.com/OpenLineage/OpenLineage/tree/1.46.0/integration/watsonx.data.intelligence",
"schemaURL": "https://openlineage.io/spec/2-0-2/OpenLineage.json#/$defs/DatasetEvent",
"dataset": {
"namespace": "postgresql-azure://test-host:1234",
"name": "ORCL.DWH.TableA",
"facets": {
"documentation": {
"_producer": "https://openlineage.io/spec/facets/1-0-0/DocumentationDatasetFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/1-0-0/DocumentationDatasetFacet.json",
"description": "no description"
},
"dataSource": {
"_producer": "https://openlineage.io/spec/facets/1-0-0/DatasourceDatasetFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/1-0-0/DatasourceDatasetFacet.json",
"name": "PROD1"
},
"schema": {
"_producer": "https://openlineage.io/spec/facets/1-0-0/SchemaDatasetFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/1-0-0/SchemaDatasetFacet.json",
"fields": [
{
"name": "A1",
"type": "string",
"description": "Column A1 of table TableA"
},
{
"name": "A2",
"type": "string",
"description": "Column A2 of table TableA"
},
{
"name": "A3",
"type": "string",
"description": "Column A3 of table TableA"
}
]
},
"datasetType": {
"_producer": "https://openlineage.io/spec/facets/1-0-0/DatasetTypeDatasetFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/1-0-0/DatasetTypeDatasetFacet.json",
"datasetType": "TABLE"
},
"tags": {
"_producer": "https://openlineage.io/spec/facets/1-0-0/TagsDatasetFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/1-0-0/TagsDatasetFacet.json",
"tags": ["tag1", "tag2"]
}
}
}
}
Tarefa
Veja o formato de exemplo do arquivo.json gerado para uma tarefa:
{
"eventTime": "2026-04-29T11:20:20.523Z",
"producer": "https://github.com/OpenLineage/OpenLineage/tree/1.46.0/integration/watsonx.data.intelligence",
"schemaURL": "https://openlineage.io/spec/2-0-2/OpenLineage.json#/$defs/JobEvent",
"job": {
"namespace": "postgresql-azure://test-host:1234",
"name": "Import LOAN",
"facets": {
"documentation": {
"_producer": "https://openlineage.io/spec/facets/1-0-0/DocumentationJobFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/1-0-0/DocumentationJobFacet.json",
"description": "Job description"
},
"jobType": {
"_producer": "https://openlineage.io/spec/facets/2-0-2/JobTypeJobFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/2-0-2/JobTypeJobFacet.json",
"processingType": "BATCH",
"jobType": "JOB",
"integration": "IBM Manta Data Lineage"
},
"sourceCode": {
"_producer": "https://openlineage.io/spec/facets/1-0-0/SourceCodeJobFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/1-0-0/SourceCodeJobFacet.json",
"language": "unknown",
"sourceCode": "the plain string field"
},
"tags": {
"_producer": "https://openlineage.io/spec/facets/1-0-0/TagsJobFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/1-0-0/TagsJobFacet.json",
"tags": ["tag1", "tag2"]
}
}
},
"inputs": [
{
"namespace": "postgresql-azure://test-host:1234",
"name": "ORCL.DWH.TableA",
"facets": {
"documentation": {
"_producer": "https://openlineage.io/spec/facets/1-0-0/DocumentationDatasetFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/1-0-0/DocumentationDatasetFacet.json",
"description": "no description"
},
"dataSource": {
"_producer": "https://openlineage.io/spec/facets/1-0-0/DatasourceDatasetFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/1-0-0/DatasourceDatasetFacet.json",
"name": "PROD1"
},
"schema": {
"_producer": "https://openlineage.io/spec/facets/1-0-0/SchemaDatasetFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/1-0-0/SchemaDatasetFacet.json",
"fields": [
{
"name": "A1",
"type": "string",
"description": "Column A1 of table TableA"
},
{
"name": "A2",
"type": "string",
"description": "Column A2 of table TableA"
},
{
"name": "A3",
"type": "string",
"description": "Column A3 of table TableA"
}
]
},
"datasetType": {
"_producer": "https://openlineage.io/spec/facets/1-0-0/DatasetTypeDatasetFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/1-0-0/DatasetTypeDatasetFacet.json",
"datasetType": "TABLE"
},
"tags": {
"_producer": "https://openlineage.io/spec/facets/1-0-0/TagsDatasetFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/1-0-0/TagsDatasetFacet.json",
"tags": []
}
}
}
],
"outputs": [
{
"namespace": "postgresql-azure://test-host:1234",
"name": "ORCL.DWH.TableB",
"facets": {
"documentation": {
"_producer": "https://openlineage.io/spec/facets/1-0-0/DocumentationDatasetFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/1-0-0/DocumentationDatasetFacet.json",
"description": "no description"
},
"dataSource": {
"_producer": "https://openlineage.io/spec/facets/1-0-0/DatasourceDatasetFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/1-0-0/DatasourceDatasetFacet.json",
"name": "ORCL.DWH.TableB"
},
"schema": {
"_producer": "https://openlineage.io/spec/facets/1-0-0/SchemaDatasetFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/1-0-0/SchemaDatasetFacet.json",
"fields": [
{
"name": "C1",
"type": "string",
"description": "Column C1 of table TableB"
},
{
"name": "C2",
"type": "string",
"description": "Column C2 of table TableB"
}
]
},
"datasetType": {
"_producer": "https://openlineage.io/spec/facets/1-0-0/DatasetTypeDatasetFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/1-0-0/DatasetTypeDatasetFacet.json",
"datasetType": "TABLE"
},
"tags": {
"_producer": "https://openlineage.io/spec/facets/1-0-0/TagsDatasetFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/1-0-0/TagsDatasetFacet.json",
"tags": []
},
"columnLineage": {
"_producer": "https://openlineage.io/spec/facets/1-0-0/ColumnLineageDatasetFacet.json",
"_schemaURL": "https://openlineage.io/spec/facets/1-0-0/ColumnLineageDatasetFacet.json",
"fields": {
"C1": {
"inputFields": [
{
"namespace": "postgresql-azure://test-host:1234",
"name": "ORCL.DWH.TableA",
"field": "A1",
"transformations": []
},
{
"namespace": "postgresql-azure://test-host:1234",
"name": "ORCL.DWH.TableA",
"field": "A2",
"transformations": []
}
]
},
"C2": {
"inputFields": [
{
"namespace": "postgresql-azure://test-host:1234",
"name": "ORCL.DWH.TableA",
"field": "A3",
"transformations": []
}
]
}
}
}
}
}
]
}