教程:Atlas 2.2 新功能

本教程介绍如何使用 Microsoft Purview 中的数据映射以编程方式与新的 Atlas 2.2 API 进行交互。

先决条件

业务元数据 API

业务元数据是一个模板,其中包含自定义属性 () 键值。 可以全局创建这些属性,然后跨多个 typedef 应用它们。

Atlas 终结点

对于所有请求,需要为 Microsoft Purview 帐户使用 Atlas 终结点。

  1. 在Azure 门户中找到Microsoft Purview 帐户
  2. 选择左侧菜单中的 “属性”
  3. 复制 Atlas 终结点

Microsoft Purview 的属性页的屏幕截图,其中突出显示了“Atlas 终结点”框。

使用属性创建业务元数据

可以将请求发送到 POST 以下终结点:

POST {{endpoint}}/api/atlas/v2/types/typedefs

提示

applicableEntityTypes 属性指示元数据将应用于哪些数据类型。

示例 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"
]

后续步骤