L'URN est une adresse permettant d'identifier de manière unique un asset présent dans un système physique. Cette adresse décrit également le type de l'asset ainsi que son positionnement hiérarchique dans le système physique, indépendamment de la représentation et du rangement de cet objet dans DataGalaxy.
Ce nouvel identifiant facilite la récupération des métadonnées et la création d'un lineage de bout en bout, en interconnectant les technologies.
Le format générique de l'URN est le suivant :
urn:technologie-versionUrn:nomObjet1@typeObjet1:nomObjet2@typeObjet2...
Le type de l'objet peut être optionnel: il est utile lorsque dans le système physique, plusieurs types d'objets peuvent être trouvés sous le même parent (par exemple une table et une vue dans une base de données). A chaque niveau, un type par défaut est défini et sera le type implicite d'un objet dont l'URN ne précise pas de type. Ainsi, on pourra manipuler des URNs simplifiés :
urn:technologie-versionUrn:nomObjet1:nomObjet2...
A la première création d'un objet DataGalaxy grâce à son URN, ses chemin et chemin des types (Path / TypePath) sont résolus à partir des composants de l'URN afin de ranger l'objet dans l'arborescence. L'URN d'un objet contenant également l'URN de ses parents, les parents seront également recherchés dans la plateforme afin d'y raccrocher le nouvel objet. Une fois créé, l'objet peut ensuite être déplacé ailleurs dans l'arborescence sans que cela n'impacte la capacité à le mettre à jour via son URN. Cela donne donc plus de flexibilité pour organiser la hiérarchie des objets dans la plateforme.
Les nouvelles routes API permettant de manipuler les objets DataGalaxy grâce à leur URN sont décrites dans la documentation en ligne de l'API.
Cette page sera mise à jour au fur et à mesure de la définition de la convention URN pour chaque technologie.
Bases, entrepôts et stockages de données
MS SQL Server
Version URN : 1.
| Objet | URN |
|---|---|
| Database | urn:sqlserver-1:hostname%3Aport%2Fdatabase |
| Schema | urn:sqlserver-1:hostname%3Aport%2Fdatabase:schema@schema |
| Table | urn:sqlserver-1:hostname%3Aport%2Fdatabase:schema@schema:table |
| View | urn:sqlserver-1:hostname%3Aport%2Fdatabase:schema@schema:view@view |
| Column | urn:sqlserver-1:hostname%3Aport%2Fdatabase:schema@schema:table:column urn:sqlserver-1:hostname%3Aport%2Fdatabase:schema@schema:view@view:column |
| PK | urn:sqlserver-1:hostname%3Aport%2Fdatabase:schema@schema:table:pkConstraintName@primarykey |
| FK | urn:sqlserver-1:hostname%3Aport%2Fdatabase:schema@schema:table:fkName@foreignkey |
Azure SQL
Version URN : 1.
| Objet | URN |
|---|---|
| Database | urn:azuresql-1:hostname%3Aport%2Fdatabase |
| Schema | urn:azuresql-1:hostname%3Aport%2Fdatabase:schema@schema |
| Table | urn:azuresql-1:hostname%3Aport%2Fdatabase:schema@schema:table |
| View | urn:azuresql-1:hostname%3Aport%2Fdatabase:schema@schema:view@view |
| Column | urn:azuresql-1:hostname%3Aport%2Fdatabase:schema@schema:table:column urn:azuresql-1:hostname%3Aport%2Fdatabase:schema@schema:view@view:column |
| PK | urn:azuresql-1:hostname%3Aport%2Fdatabase:schema@schema:table:pkConstraintName@primarykey |
| FK | urn:azuresql-1:hostname%3Aport%2Fdatabase:schema@schema:table:fkName@foreignkey |
BigQuery
URN Version: 1.
| Object | URN |
|---|---|
| Project | urn:googlebigquery-1:projectId |
| Dataset | urn:googlebigquery-1:projectId:dataset |
| Table | urn:googlebigquery-1:projectId:dataset:table |
| View | urn:goglebigquery-1:projectId:dataset:view@view |
| Field | urn:googlebigquery-1:projectId:dataset:table:field*:field@field |
Databricks
URN Version: 1.
| Object | URN |
|---|---|
| Instance | urn:databricks-1:instance |
| Catalog | urn:databricks-1:instance:catalog |
| Schema | urn:databricks-1:instance:catalog:schema |
| Table | urn:databricks-1:instance:catalog:schema:table |
| View | urn:databricks-1:instance:catalog:schema:view@view |
| Column | urn:databricks-1:instance:catalog:schema:table:column urn:databricks-1:instance:catalog:schema:view@view:column |
| PK | urn:databricks-1:instance:catalog:schema:table:column:pkConstraintName@primarykey |
| FK | urn:databricks-1:instance:catalog:schema:table:column:fkName@foreignkey |
Snowflake
Version URN : 1.
| Objet | URN |
|---|---|
| Account | urn:snowflake-1:accountName |
| Database | urn:snowflake-1:accountName:database |
| Schema | urn:snowflake-1:accountName:database:schema |
| Table | urn:snowflake-1:accountName:database:schema:table |
| View | urn:snowflake-1:accountName:database:schema:view@view |
| Dynamic Table | urn:snowflake-1:accountName:database:schema:dtable@dynamictable |
| Column | urn:snowflake-1:accountName:database:schema:table:column urn:snowflake-1:accountName:database:schema:view@view:column |
| PK | urn:snowflake-1:accountName:database:schema:table:pkConstraintName@primarykey |
| FK | urn:snowflake-1:accountName:database:schema:table:fkName@foreignkey |
Outils BI, data visualization
Power BI
Version URN : 1.
| Objet | URN |
|---|---|
| Workspace | urn:powerbi-1:tenantId:workspaceId urn:powerbi-1:tenantId:workspaceId@workspace |
| Application | urn:powerbi-1:tenantId:appId |
| Dashboard | urn:powerbi-1:tenantId:workspaceId@workspace:dashboardId@dashboard |
| DataSet | urn:powerbi-1:tenantId:workspaceId@workspace:datasetId@dataset |
| DataSet Table | urn:powerbi-1:tenantId:workspaceId@workspace:datasetId@dataset:tableName |
| DataSet Measure | urn:powerbi-1:tenantId:workspaceId@workspace:datasetId@dataset:tableName:measureName@measure |
| DataSet Column | urn:powerbi-1:tenantId:workspaceId@workspace:datasetId@dataset:tableName:columnName@column |
| DataFlow | urn:powerbi-1:tenantId:workspaceId@workspace:dataflowId@dataflow |
| DataFlow Entity | urn:powerbi-1:tenantId:workspaceId@workspace:dataflowId@dataflow:entityName |
| DataFlow Entity Attribute | urn:powerbi-1:tenantId:workspaceId@workspace:dataflowId@dataflow:entityName:attributeName |
| Report | urn:powerbi-1:tenantId:workspaceId@workspace:reportId urn:powerbi-1:tenantId:workspaceId@workspace:reportId@report |
| Report Page | urn:powerbi-1:tenantId:workspaceId@workspace:reportId@report:pageName |