Purview - Use REST API toCreate custom data source with tabular schema, similar to Azure Databricks Table
I'm trying to model a custom data source with a defined schema in Microsoft Purview. My issue is that the custom column entities for my schema are showing as individual assets, which doesn't happen for the Azure Databricks Table Column on which I'm basing my entity definitions.
To illustrate, I would like the below Assets count to be 1 (for the parent table).
I want the below list to only show the table.
I hope to model the behaviour seen with the Azure Databricks Table (as below).
Note: the table columns are not shown in the list
My custom entity and relationship definitions:
Custom column
{ "category": "ENTITY", "version": 1, "name": "test_entity_table_column", "description": "test entity to represent custom column", "typeVersion": "1.0", "attributeDefs": [ { 'name': 'dataType', 'typeName': 'string', 'isOptional': True, 'cardinality': 'SINGLE', 'valuesMinCount': 0, 'valuesMaxCount': 1, 'isUnique': False, 'isIndexable': False, 'includeInNotification': False }, { 'name': 'isNullable', 'typeName': 'boolean', 'isOptional': True, 'cardinality': 'SINGLE', 'valuesMinCount': 0, 'valuesMaxCount': 1, 'isUnique': False, 'isIndexable': False, 'includeInNotification': False }, { 'name': 'comment', 'typeName': 'string', 'isOptional': True, 'cardinality': 'SINGLE', 'valuesMinCount': 0, 'valuesMaxCount': 1, 'isUnique': False, 'isIndexable': False, 'includeInNotification': False } ], "superTypes": ["DataSet"], "subTypes": [] }
Custom table
{ "category": "ENTITY", "version": 1, "name": "test_entity_tabular", "description": "test entity to represent custom data source with tabular schema", "typeVersion": "1.0", "options": { "schemaElementsAttribute": "columns" }, "attributeDefs": [ { 'name': 'comment', 'typeName': 'string', 'isOptional': True, 'cardinality': 'SINGLE', 'valuesMinCount': 0, 'valuesMaxCount': 1, 'isUnique': False, 'isIndexable': False, 'includeInNotification': False } ], "superTypes": [ "DataSet", "Purview_Table" ], "subTypes": [], "relationshipAttributeDefs": [] }
Table - column relationship { "category": "RELATIONSHIP", "version": 1, "name": "test_entity_table_columns", "description": "test relationship for table cols", "typeVersion": "1.0", "attributeDefs": [], "relationshipCategory": "COMPOSITION", "propagateTags": "NONE", "endDef1": { "type": "test_entity_tabular", "name": "columns", "isContainer": True, "cardinality": "SET", "isLegacyAttribute": False }, "endDef2": { "type": "test_entity_table_column", "name": "table", "isContainer": False, "cardinality": "SINGLE", "isLegacyAttribute": False } }