mirror of
https://github.com/datahub-project/datahub.git
synced 2025-09-15 12:12:07 +00:00
feat(ingest/airflow): able to set platform_instance
in Dataset
(#8313)
Co-authored-by: Andrew Sikowitz <andrew.sikowitz@acryl.io>
This commit is contained in:
parent
61a1f5775c
commit
64bcc132a3
@ -1,4 +1,5 @@
|
|||||||
from abc import abstractmethod
|
from abc import abstractmethod
|
||||||
|
from typing import Optional
|
||||||
|
|
||||||
import attr
|
import attr
|
||||||
|
|
||||||
@ -18,10 +19,16 @@ class Dataset(_Entity):
|
|||||||
platform: str
|
platform: str
|
||||||
name: str
|
name: str
|
||||||
env: str = builder.DEFAULT_ENV
|
env: str = builder.DEFAULT_ENV
|
||||||
|
platform_instance: Optional[str] = None
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def urn(self):
|
def urn(self):
|
||||||
return builder.make_dataset_urn(self.platform, self.name, self.env)
|
return builder.make_dataset_urn_with_platform_instance(
|
||||||
|
platform=self.platform,
|
||||||
|
name=self.name,
|
||||||
|
platform_instance=self.platform_instance,
|
||||||
|
env=self.env,
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
@attr.s(str=True)
|
@attr.s(str=True)
|
||||||
|
@ -34,8 +34,13 @@ with DAG(
|
|||||||
dag=dag,
|
dag=dag,
|
||||||
bash_command="echo 'This is where you might run your data tooling.'",
|
bash_command="echo 'This is where you might run your data tooling.'",
|
||||||
inlets=[
|
inlets=[
|
||||||
Dataset("snowflake", "mydb.schema.tableA"),
|
Dataset(platform="snowflake", name="mydb.schema.tableA"),
|
||||||
Dataset("snowflake", "mydb.schema.tableB", "DEV"),
|
Dataset(platform="snowflake", name="mydb.schema.tableB", env="DEV"),
|
||||||
|
Dataset(
|
||||||
|
platform="snowflake",
|
||||||
|
name="mydb.schema.tableC",
|
||||||
|
platform_instance="cloud",
|
||||||
|
),
|
||||||
# You can also put dataset URNs in the inlets/outlets lists.
|
# You can also put dataset URNs in the inlets/outlets lists.
|
||||||
Urn(
|
Urn(
|
||||||
"urn:li:dataset:(urn:li:dataPlatform:snowflake,mydb.schema.tableC,PROD)"
|
"urn:li:dataset:(urn:li:dataPlatform:snowflake,mydb.schema.tableC,PROD)"
|
||||||
|
@ -57,11 +57,17 @@ with DAG(
|
|||||||
mces=[
|
mces=[
|
||||||
builder.make_lineage_mce(
|
builder.make_lineage_mce(
|
||||||
upstream_urns=[
|
upstream_urns=[
|
||||||
builder.make_dataset_urn("snowflake", "mydb.schema.tableA"),
|
builder.make_dataset_urn(
|
||||||
builder.make_dataset_urn("snowflake", "mydb.schema.tableB"),
|
platform="snowflake", name="mydb.schema.tableA"
|
||||||
|
),
|
||||||
|
builder.make_dataset_urn_with_platform_instance(
|
||||||
|
platform="snowflake",
|
||||||
|
name="mydb.schema.tableB",
|
||||||
|
platform_instance="cloud",
|
||||||
|
),
|
||||||
],
|
],
|
||||||
downstream_urn=builder.make_dataset_urn(
|
downstream_urn=builder.make_dataset_urn(
|
||||||
"snowflake", "mydb.schema.tableC"
|
platform="snowflake", name="mydb.schema.tableC", env="DEV"
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
|
Loading…
x
Reference in New Issue
Block a user