在本教學中,學習如何程式化地與新的 Atlas 2.2 API 互動,使用 Microsoft Purview 資料對應。
必要條件
如果你沒有 Azure 訂閱,請在開始前先建立一個免費帳號。
您必須擁有現有的 Microsoft Purview 帳號。 如果你沒有目錄,請參考快速 入門,了解如何建立 Microsoft Purview 帳號。
要建立承載憑證並呼叫任何 API,請參閱 有關如何驗證 Microsoft Purview API 的文件。
商業元資料 API
商業元資料是一個包含自訂屬性 (關鍵值) 的範本。 你可以全域建立這些屬性,然後套用到多個類型定義。
Atlas endpoint
對於所有請求,你需要 Microsoft Purview 帳號的 Atlas 端點。
- 在 Azure 入口網站中找到你的 Microsoft Purview 帳號
- 在左側選單選擇 屬性 頁面
- 複製 Atlas 的端點 值
建立帶有屬性的商業元資料
你可以向以下端點發送 POST 請求:
POST {{endpoint}}/api/atlas/v2/types/typedefs
提示
ApplucalableEntityTypes 屬性會告訴該中繼資料將應用到哪些資料型態。
範例 JSON:
{
"businessMetadataDefs": [
{
"category": "BUSINESS_METADATA",
"createdBy": "admin",
"updatedBy": "admin",
"version": 1,
"typeVersion": "1.1",
"name": "<Name of Business Metadata>",
"description": "",
"attributeDefs": [
{
"name": "<Attribute Name>",
"typeName": "string",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": true,
"options": {
"maxStrLength": "50",
"applicableEntityTypes": "[\"Referenceable\"]"
}
}
]
}
]
}
新增或更新現有業務元資料屬性
你可以向以下端點發送 PUT 請求:
PUT {{endpoint}}/api/atlas/v2/types/typedefs
範例 JSON:
{
"businessMetadataDefs": [
{
"category": "BUSINESS_METADATA",
"createdBy": "admin",
"updatedBy": "admin",
"version": 1,
"typeVersion": "1.1",
"name": "<Name of Business Metadata>",
"description": "",
"attributeDefs": [
{
"name": "<Attribute Name>",
"typeName": "string",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": true,
"options": {
"maxStrLength": "500",
"applicableEntityTypes": "[\"Referenceable\"]"
}
},
{
"name": "<Attribute Name 2>",
"typeName": "int",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": true,
"options": {
"applicableEntityTypes": "[\"Referenceable\"]"
}
}
]
}
]
}
取得商業元資料定義
你可以向以下端點發送 GET 請求:
GET {endpoint}}/api/atlas/v2/types/typedef/name/{{Business Metadata Name}}
將企業元資料屬性設定為實體
你可以向以下端點發送 POST 請求:
POST {{endpoint}}/api/atlas/v2/entity/guid/{{GUID}}/businessmetadata?isOverwrite=true
範例 JSON:
{
"myBizMetaData1": {
"bizAttr1": "I am myBizMetaData1.bizAttr1",
"bizAttr2": 123,
}
}
從實體中刪除企業元資料屬性
你可以向以下端點發送 DELETE 請求:
'DELETE' {{endpoint}}/api/atlas/v2/entity/guid/{{GUID}}/businessmetadata?isOverwrite=true
範例 JSON:
{
"myBizMetaData1": {
"bizAttr1": ""
}
}
刪除企業中繼資料類型定義
注意事項
只有當商業元資料類型定義沒有參考資料時,也就是沒有指派到目錄中的任何資產,你才能刪除它。
你可以向以下端點發送 DELETE 請求:
DELETE {{endpoint}}/api/atlas/v2/types/typedef/name/{{Business Metadata Name}}
自訂屬性 API
自訂屬性是可以直接加入 Atlas 實體的鍵值對。
為一個實體設定自訂屬性
你可以向以下端點發送 POST 請求:
POST {{endpoint}}/api/atlas/v2/entity
範例 JSON:
{
"entity": {
"typeName": "azure_datalake_gen2_path",
"attributes": {
"qualifiedName": "<FQN of the asset>",
"name": "data6.csv"
},
"guid": "3ffb28ff-138f-419e-84ba-348b0165e9e0",
"customAttributes": {
"custAttr1": "attr1",
"custAttr2": "attr2"
}
}
}
標籤 API
標籤是可套用於任何 Atlas 實體的自由文字標籤。
將標籤設定為一個實體
你可以向以下端點發送 POST 請求:
POST {{endpoint}}/api/atlas/v2/entity/guid/{{GUID}}/labels
範例 JSON:
[
"label1",
"label2"
]
刪除標籤到實體
你可以向以下端點發送 DELETE 請求:
DELETE {{endpoint}}/api/atlas/v2/entity/guid/{{GUID}}/labels
範例 JSON:
[
"label2"
]