Data Lineage API dapat menyerap informasi silsilah dari sistem yang terintegrasi dengan OpenLineage, standar terbuka untuk pengumpulan silsilah.
Saat Anda mengirim peristiwa berformat OpenLineage ke Data Lineage API menggunakan metode
ProcessOpenLineageRunEvent, Data Lineage API akan memetakan atribut dari pesan OpenLineage ke atribut
yang sesuai di Data Lineage API.
Dokumen ini menyediakan tabel referensi untuk pemetaan ini.
Pemetaan atribut
Metode REST API ProcessOpenLineageRunEvent memetakan atribut OpenLineage ke atribut Data Lineage API sebagai
berikut:
| Atribut Data Lineage API | Atribut OpenLineage |
|---|---|
| Process.name | projects/PROJECT_NUMBER/locations/LOCATION/processes/HASH_OF_NAMESPACE_AND_NAME |
| Process.displayName | Job.namespace + ":" + Job.name |
| Process.attributes | Job.facets (lihat Data tersimpan) |
| Run.name | projects/PROJECT_NUMBER/locations/LOCATION/processes/HASH_OF_NAMESPACE_AND_NAME/runs/HASH_OF_RUNID |
| Run.displayName | Run.runId |
| Run.attributes | Run.facets (lihat Data tersimpan) |
| Run.startTime | eventTime |
| Run.endTime | eventTime |
| Run.state | eventType |
| LineageEvent.name | projects/PROJECT_NUMBER/locations/LOCATION/processes/HASH_OF_NAMESPACE_AND_NAME/runs/HASH_OF_RUNID/lineageEvents/HASH_OF_JOB_RUN_INPUT_OUTPUTS_OF_EVENT (misalnya, projects/11111111/locations/us/processes/1234/runs/4321/lineageEvents/111-222-333) |
| LineageEvent.EventLinks.source | input (fqn adalah gabungan namespace dan nama) |
| LineageEvent.EventLinks.target | output (fqn adalah gabungan namespace dan nama) |
| LineageEvent.startTime | eventTime |
| LineageEvent.endTime | eventTime |
| requestId | Ditentukan oleh pengguna metode |
Pemetaan FQN
Tabel berikut memberikan contoh pasangan nama dan namespace OpenLineage untuk berbagai sistem, dan nama lengkap (FQN) yang setara di Dataplex Universal Catalog:
| Sistem | Namespace OpenLineage | Nama OpenLineage | FQN Katalog Universal Dataplex |
|---|---|---|---|
| Athena | awsathena://athena.{region_name}.amazonaws.com |
|
|
| AWS Glue | arn:aws:glue:{region}:{account id} |
table/{database name}/{table name} |
aws_glue:table:{region}.{account id}.{database name}.{table name} |
| Azure Cosmos DB | azurecosmos://{host}/dbs/{database} |
colls/{table} |
|
| Azure Data Explorer | azurekusto://{host}.kusto.windows.net |
{database}/{table} |
|
| Azure Synapse | sqlserver://{host}:{port} |
|
|
| BigQuery | bigquery |
|
|
| Cassandra | cassandra://{host}:{port} |
|
|
| MySQL | mysql://{host}:{port} |
|
|
| CrateDB | crate://{host}:{port} |
{database}.{schema}.{table} |
Tidak didukung |
| DB2 | db2://{host}:{port} |
|
|
| Hive | hive://{host}:{port} |
{database}.{table} |
Tidak didukung |
| MSSQL | mssql://{host}:{port} |
{database}.{schema}.{table} |
Tidak didukung |
| OceanBase | oceanbase://{host}:{port} |
{database}.{table} |
Tidak didukung |
| Oracle | oracle://{host}:{port} |
{serviceName}.{schema}.{table} or {sid}.{schema}.{table} |
|
| Postgres | postgres://{host}:{port} |
|
|
| Teradata | teradata://{host}:{port} |
{database}.{table} |
Tidak didukung |
| Redshift | redshift://{cluster_identifier}.{region_name}:{port} |
|
|
| Snowflake | snowflake://{organization name}-{account name} or snowflake://{account-locator}(.{compliance})(.{cloud_region_id})(.{cloud}) |
|
|
| Spanner | spanner://{projectId}:{instanceId} |
{database}.{schema}.{table} |
Didukung di Dataplex Universal Catalog, tetapi tidak didukung di Silsilah data |
| Trino | trino://{host}:{port} |
|
|
| ABFSS (Azure Data Lake Gen2) | abfss://{container name}@{service name}.dfs.core.windows.net |
{path} |
|
| DBFS (Databricks File System) | dbfs://{workspace name} |
{path} |
|
| Cloud Storage | gs://{bucket name} |
{object key} |
|
| HDFS | hdfs://{namenode host}:{namenode port} |
{path} |
|
| Kafka | kafka://{bootstrap server host}:{port} |
{topic} |
kafka:{serverHostWithPort}.{topicId} |
| Sistem file lokal | file |
{path} |
filesystem:localhost.{path} |
| Sistem file jarak jauh | file://{host} |
{path} |
filesystem:{hostWithPort}.{path} |
| S3 | s3://{bucket name} |
{object key} |
s3a dan s3n juga diterima dan dikonversi menjadi s3
|
| WASBS (Azure Blob Storage) | wasbs://{container name}@{service name}.dfs.core.windows.net |
{object key} |
|
| Pub/Sub Topic | pubsub |
topic:{projectId}:{topicId} |
pubsub:topic:{projectId}.{topicId} |
| Langganan Pub/Sub | pubsub |
subscription:{projectId}:{subscriptionId} |
pubsub:subscription:{projectId}.{subscriptionId} |
Format tambahan yang diterima
Meskipun OpenLineage tidak menentukan pasangan namespace/name standar untuk
sistem berikut, Data Lineage API menerima peristiwa silsilah untuk sistem tersebut jika
diformat seperti yang dijelaskan dalam tabel berikut. Resource yang dirujuk dalam pesan OpenLineage dengan namespace custom ditafsirkan sebagai nama yang sepenuhnya memenuhi syarat kustom.
| Sistem | Namespace OpenLineage | Nama OpenLineage | FQN Katalog Universal Dataplex |
|---|---|---|---|
| FQN Kustom | custom |
{some reference} |
custom:{someReference} |
| Dataproc Metastore | dataproc_metastore |
|
|
Langkah berikutnya
- Pelajari cara berintegrasi dengan OpenLineage.
- Lihat referensi untuk nama yang sepenuhnya memenuhi syarat.
- Pelajari Data Lineage API.
- Pelajari cara melihat informasi silsilah.