你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Type - Bulk Create

批量创建所有 atlas 类型定义,只会创建新定义。 将放弃对现有定义所做的任何更改。

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

URI 参数

名称 必需 类型 说明
endpoint
path True

string

请求正文

名称 类型 说明
businessMetadataDefs

AtlasBusinessMetadataDef[]

businessMetadataDefs

classificationDefs

AtlasClassificationDef[]

分类定义的数组。

entityDefs

AtlasEntityDef[]

实体定义的数组。

enumDefs

AtlasEnumDef[]

枚举定义的数组。

relationshipDefs

AtlasRelationshipDef[]

关系定义的数组。

structDefs

AtlasStructDef[]

结构定义的数组。

termTemplateDefs

TermTemplateDef[]

术语模板定义的数组。

响应

名称 类型 说明
200 OK

AtlasTypesDef

请求已成功。

Other Status Codes

AtlasErrorResponse

意外的错误响应。

安全性

OAuth2Auth

类型: oauth2
流向: implicit
授权 URL: https://login.microsoftonline.com/common/oauth2/authorize

作用域

名称 说明
https://purview.azure.net/.default

示例

Type_BulkCreate
Type_BulkCreateBusinessMetadataDefs

Type_BulkCreate

示例请求

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

{
  "enumDefs": [],
  "structDefs": [],
  "classificationDefs": [],
  "entityDefs": [
    {
      "name": "azure_sql_server_example",
      "superTypes": [
        "azure_resource"
      ],
      "typeVersion": "1.0",
      "attributeDefs": [
        {
          "name": "databases",
          "typeName": "array<azure_sql_db>",
          "cardinality": "SET",
          "isIndexable": false,
          "isOptional": true,
          "isUnique": false
        }
      ]
    }
  ],
  "relationshipDefs": []
}

示例响应

{
  "enumDefs": [],
  "structDefs": [],
  "classificationDefs": [],
  "entityDefs": [
    {
      "category": "ENTITY",
      "guid": "a47fd902-a564-45f1-aa51-ce9224955881",
      "createdBy": "ExampleCreator",
      "updatedBy": "ExampleUpdator",
      "createTime": 1553672211954,
      "updateTime": 1553672211954,
      "version": 1,
      "name": "azure_sql_server_example",
      "description": "azure_sql_server_example",
      "typeVersion": "1.0",
      "attributeDefs": [
        {
          "name": "databases",
          "typeName": "array<azure_sql_db>",
          "isOptional": true,
          "cardinality": "SET",
          "valuesMinCount": 0,
          "valuesMaxCount": 2147483647,
          "isUnique": false,
          "isIndexable": false,
          "includeInNotification": false
        }
      ],
      "superTypes": [
        "azure_resource"
      ],
      "subTypes": []
    }
  ],
  "relationshipDefs": []
}

Type_BulkCreateBusinessMetadataDefs

示例请求

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

{
  "enumDefs": [],
  "structDefs": [],
  "classificationDefs": [],
  "entityDefs": [],
  "relationshipDefs": [],
  "businessMetadataDefs": [
    {
      "name": "myBizMetadata1",
      "description": "",
      "attributeDefs": [
        {
          "name": "bizAttr1",
          "typeName": "string",
          "isOptional": true,
          "cardinality": "SINGLE",
          "isUnique": false,
          "isIndexable": true,
          "options": {
            "maxStrLength": "50",
            "applicableEntityTypes": "[\"Path\"]"
          }
        }
      ]
    }
  ]
}

示例响应

{
  "enumDefs": [],
  "structDefs": [],
  "classificationDefs": [],
  "entityDefs": [],
  "relationshipDefs": [],
  "businessMetadataDefs": [
    {
      "category": "BUSINESS_METADATA",
      "guid": "f26dc6d1-be9c-a0ce-a274-b6388ff6e2eb",
      "createdBy": "ServiceAdmin",
      "updatedBy": "ServiceAdmin",
      "createTime": 1646994112241,
      "updateTime": 1646994112241,
      "version": 1,
      "name": "myBizMetadata1",
      "description": "This is my businessMetadata1",
      "typeVersion": "1.0",
      "lastModifiedTS": "1",
      "attributeDefs": [
        {
          "name": "bizAttr1",
          "typeName": "string",
          "isOptional": true,
          "cardinality": "SINGLE",
          "valuesMinCount": 0,
          "valuesMaxCount": 1,
          "isUnique": false,
          "isIndexable": true,
          "includeInNotification": false,
          "options": {
            "applicableEntityTypes": "[\"Path\"]",
            "maxStrLength": "50"
          }
        }
      ]
    }
  ]
}

定义

名称 说明
AtlasAttributeDef

类,用于捕获 struct-attribute 的详细信息。

AtlasBusinessMetadataDef

类,用于捕获结构类型的详细信息。

AtlasClassificationDef

用于捕获分类类型的详细信息的类。

AtlasConstraintDef

捕获约束详细信息的类。

AtlasEntityDef

类,用于捕获实体类型的详细信息。

AtlasEnumDef

类,用于捕获枚举类型的详细信息。

AtlasEnumElementDef

捕获枚举元素详细信息的类。

AtlasErrorResponse

来自服务的错误响应

AtlasRelationshipAttributeDef

relationshipEndDef 表示关系的结束。 关系的结束由类型、属性名称、基数以及它是否为关系的容器端定义。

AtlasRelationshipDef

AtlasRelationshipDef 是定义关系的 TypeDef。 与其他 typeDefs 一样,AtlasRelationshipDef 具有名称。 创建后,RelationshipDef 具有 guid。 名称和 guid 是标识 RelationshipDef 的 2 种方式。 RelationshipDefs 有 2 个端,每个端指定基数、EntityDef 类型名称和名称,以及结尾是否为容器(可选)。 RelationshipDefs 可以具有 AttributeDefs - 尽管只允许基元类型。 RelationshipDefs 具有 relationshipCategory,指定所需的关系 UML 类型 EntityDefs 和 RelationshipDefs 的用途方式是 EntityDefs 将定义 AttributeDefs,这些 AttributeDefs 不会指定 EntityDef 类型名称作为其类型。 RelationshipDefs 将新属性引入实体实例。 例如,EntityDef A 可能具有 attr1、attr2、attr3 的属性

EntityDef B 可能具有属性 attr4,attr5,attr6 RelationshipDef AtoB 可以定义 2 个结束

end1:类型 A,名称 attr7 end2:类型 B,名称 attr8

创建 EntityDef A 实例时,它将具有属性 attr1,attr2,attr3,attr7 当创建 EntityDef B 的实例时,它将具有属性 attr4,attr5,attr6,attr8

通过这种方式,relationshipDefs 可以独立于 entityDefs 进行创作,并且可以将关系属性注入实体实例

AtlasRelationshipEndDef

relationshipEndDef 表示关系的结束。 关系的结束由类型、属性名称、基数以及它是否为关系的容器端定义。

AtlasStructDef

类,用于捕获结构类型的详细信息。

AtlasTypesDef

类型的定义。

CardinalityValue

基数

DateFormat

日期格式。

NumberFormat

数字格式。

RelationshipCategory

关系类别

RoundingMode

舍入模式

TermTemplateDef

术语表术语的术语模板定义。

TimeZone

时区信息。

TypeCategory

类型类别

AtlasAttributeDef

类,用于捕获 struct-attribute 的详细信息。

名称 类型 说明
cardinality

CardinalityValue

单值属性或多值属性。

constraints

AtlasConstraintDef[]

约束数组。

defaultValue

string

属性的默认值。

description

string

属性的说明。

includeInNotification

boolean

确定它是否包含在通知中。

isIndexable

boolean

确定它是否可编制索引。

isOptional

boolean

确定它是否为可选。

isUnique

boolean

确定它是否唯一。

name

string

属性名。

options

object

属性的选项。

typeName

string

类型的名称。

valuesMaxCount

integer

值的最大计数。

valuesMinCount

integer

值的最小计数。

AtlasBusinessMetadataDef

类,用于捕获结构类型的详细信息。

名称 类型 说明
attributeDefs

AtlasAttributeDef[]

属性定义的数组。

category

TypeCategory

类别类型的枚举。

createTime

integer

记录的创建时间。

createdBy

string

创建记录的用户。

dateFormatter

DateFormat

日期格式。

description

string

类型定义的说明。

guid

string

类型定义的 GUID。

lastModifiedTS

string

用于并发控制的 ETag。

name

string

类型定义的名称。

options

object

类型定义的选项。

serviceType

string

服务类型。

typeVersion

string

类型的版本。

updateTime

integer

记录的更新时间。

updatedBy

string

更新记录的用户。

version

integer

记录的版本。

AtlasClassificationDef

用于捕获分类类型的详细信息的类。

名称 类型 说明
attributeDefs

AtlasAttributeDef[]

属性定义的数组。

category

TypeCategory

类别类型的枚举。

createTime

integer

记录的创建时间。

createdBy

string

创建记录的用户。

dateFormatter

DateFormat

日期格式。

description

string

类型定义的说明。

entityTypes

string[]

在 classificationDef 中指定 entityType 名称的列表可确保分类只能应用于这些 entityTypes。

实体类型的任何子类型都继承限制。

任何 classificationDef 子类型都继承父实体类型限制。

任何 classificationDef 子类型都可以通过指定 entityTypes 的子集来进一步限制父实体类型限制。

如果没有父限制,则为空的 entityTypes 列表表示没有限制。

如果存在父限制,则为空的 entityTypes 列表意味着子类型选取父级限制。

如果提供了 entityType 列表,其中一个从另一个继承,则会拒绝。 这应鼓励更简洁的 classificationsDefs。

guid

string

类型定义的 GUID。

lastModifiedTS

string

用于并发控制的 ETag。

name

string

类型定义的名称。

options

object

类型定义的选项。

serviceType

string

服务类型。

subTypes

string[]

子类型的数组。

superTypes

string[]

超级类型的数组。

typeVersion

string

类型的版本。

updateTime

integer

记录的更新时间。

updatedBy

string

更新记录的用户。

version

integer

记录的版本。

AtlasConstraintDef

捕获约束详细信息的类。

名称 类型 说明
params

约束定义的参数。

type

string

约束的类型。

AtlasEntityDef

类,用于捕获实体类型的详细信息。

名称 类型 说明
attributeDefs

AtlasAttributeDef[]

属性定义的数组。

category

TypeCategory

类别类型的枚举。

createTime

integer

记录的创建时间。

createdBy

string

创建记录的用户。

dateFormatter

DateFormat

日期格式。

description

string

类型定义的说明。

guid

string

类型定义的 GUID。

lastModifiedTS

string

用于并发控制的 ETag。

name

string

类型定义的名称。

options

object

类型定义的选项。

relationshipAttributeDefs

AtlasRelationshipAttributeDef[]

关系属性的数组。

serviceType

string

服务类型。

subTypes

string[]

子类型的数组。

superTypes

string[]

超级类型的数组。

typeVersion

string

类型的版本。

updateTime

integer

记录的更新时间。

updatedBy

string

更新记录的用户。

version

integer

记录的版本。

AtlasEnumDef

类,用于捕获枚举类型的详细信息。

名称 类型 说明
category

TypeCategory

类别类型的枚举。

createTime

integer

记录的创建时间。

createdBy

string

创建记录的用户。

dateFormatter

DateFormat

日期格式。

defaultValue

string

默认值。

description

string

类型定义的说明。

elementDefs

AtlasEnumElementDef[]

枚举元素定义的数组。

guid

string

类型定义的 GUID。

lastModifiedTS

string

用于并发控制的 ETag。

name

string

类型定义的名称。

options

object

类型定义的选项。

serviceType

string

服务类型。

typeVersion

string

类型的版本。

updateTime

integer

记录的更新时间。

updatedBy

string

更新记录的用户。

version

integer

记录的版本。

AtlasEnumElementDef

捕获枚举元素详细信息的类。

名称 类型 说明
description

string

枚举元素定义的说明。

ordinal

integer

枚举元素定义的序号。

value

string

枚举元素定义的值。

AtlasErrorResponse

来自服务的错误响应

名称 类型 说明
errorCode

string

错误代码。

errorMessage

string

错误消息。

requestId

string

请求 ID。

AtlasRelationshipAttributeDef

relationshipEndDef 表示关系的结束。 关系的结束由类型、属性名称、基数以及它是否为关系的容器端定义。

名称 类型 说明
cardinality

CardinalityValue

单值属性或多值属性。

constraints

AtlasConstraintDef[]

约束数组。

defaultValue

string

特性的默认值。

description

string

特性的说明。

includeInNotification

boolean

确定它是否包含在通知中。

isIndexable

boolean

确定它是否可编制索引。

isLegacyAttribute

boolean

确定它是否为旧属性。

isOptional

boolean

确定它是否为可选。

isUnique

boolean

确定它是否唯一。

name

string

属性名。

options

object

属性的选项。

relationshipTypeName

string

关系类型的名称。

typeName

string

类型的名称。

valuesMaxCount

integer

值的最大计数。

valuesMinCount

integer

值的最小计数。

AtlasRelationshipDef

AtlasRelationshipDef 是定义关系的 TypeDef。 与其他 typeDefs 一样,AtlasRelationshipDef 具有名称。 创建后,RelationshipDef 具有 guid。 名称和 guid 是标识 RelationshipDef 的 2 种方式。 RelationshipDefs 有 2 个端,每个端指定基数、EntityDef 类型名称和名称,以及结尾是否为容器(可选)。 RelationshipDefs 可以具有 AttributeDefs - 尽管只允许基元类型。 RelationshipDefs 具有 relationshipCategory,指定所需的关系 UML 类型 EntityDefs 和 RelationshipDefs 的用途方式是 EntityDefs 将定义 AttributeDefs,这些 AttributeDefs 不会指定 EntityDef 类型名称作为其类型。 RelationshipDefs 将新属性引入实体实例。 例如,EntityDef A 可能具有 attr1、attr2、attr3 的属性

EntityDef B 可能具有属性 attr4,attr5,attr6 RelationshipDef AtoB 可以定义 2 个结束

end1:类型 A,名称 attr7 end2:类型 B,名称 attr8

创建 EntityDef A 实例时,它将具有属性 attr1,attr2,attr3,attr7 当创建 EntityDef B 的实例时,它将具有属性 attr4,attr5,attr6,attr8

通过这种方式,relationshipDefs 可以独立于 entityDefs 进行创作,并且可以将关系属性注入实体实例

名称 类型 说明
attributeDefs

AtlasAttributeDef[]

属性定义的数组。

category

TypeCategory

类别类型的枚举。

createTime

integer

记录的创建时间。

createdBy

string

创建记录的用户。

dateFormatter

DateFormat

日期格式。

description

string

类型定义的说明。

endDef1

AtlasRelationshipEndDef

relationshipEndDef 表示关系的结束。 关系的结束由类型、属性名称、基数以及它是否为关系的容器端定义。

endDef2

AtlasRelationshipEndDef

relationshipEndDef 表示关系的结束。 关系的结束由类型、属性名称、基数以及它是否为关系的容器端定义。

guid

string

类型定义的 GUID。

lastModifiedTS

string

用于并发控制的 ETag。

name

string

类型定义的名称。

options

object

类型定义的选项。

relationshipCategory

RelationshipCategory

“关系”类别确定围绕包含和生命周期的关系样式。 UML 术语用于值。 ASSOCIATION 是一种没有包含的关系。 COMPOSITION 和 AGGREGATION 是包含关系。 区别在于容器及其子级的生命周期。 在 COMPOSITION 情况下,没有容器,子级就不能存在。 对于 AGGREGATION,容器和子级的生命周期是完全独立的。

relationshipLabel

string

关系的标签。

serviceType

string

服务类型。

typeVersion

string

类型的版本。

updateTime

integer

记录的更新时间。

updatedBy

string

更新记录的用户。

version

integer

记录的版本。

AtlasRelationshipEndDef

relationshipEndDef 表示关系的结束。 关系的结束由类型、属性名称、基数以及它是否为关系的容器端定义。

名称 类型 说明
cardinality

CardinalityValue

单值属性或多值属性。

description

string

关系结束定义的说明。

isContainer

boolean

确定它是否为容器。

isLegacyAttribute

boolean

确定它是否为旧属性。

name

string

关系结束定义的名称。

type

string

关系结束的类型。

AtlasStructDef

类,用于捕获结构类型的详细信息。

名称 类型 说明
attributeDefs

AtlasAttributeDef[]

属性定义的数组。

category

TypeCategory

类别类型的枚举。

createTime

integer

记录的创建时间。

createdBy

string

创建记录的用户。

dateFormatter

DateFormat

日期格式。

description

string

类型定义的说明。

guid

string

类型定义的 GUID。

lastModifiedTS

string

用于并发控制的 ETag。

name

string

类型定义的名称。

options

object

类型定义的选项。

serviceType

string

服务类型。

typeVersion

string

类型的版本。

updateTime

integer

记录的更新时间。

updatedBy

string

更新记录的用户。

version

integer

记录的版本。

AtlasTypesDef

类型的定义。

名称 类型 说明
businessMetadataDefs

AtlasBusinessMetadataDef[]

businessMetadataDefs

classificationDefs

AtlasClassificationDef[]

分类定义的数组。

entityDefs

AtlasEntityDef[]

实体定义的数组。

enumDefs

AtlasEnumDef[]

枚举定义的数组。

relationshipDefs

AtlasRelationshipDef[]

关系定义的数组。

structDefs

AtlasStructDef[]

结构定义的数组。

termTemplateDefs

TermTemplateDef[]

术语模板定义的数组。

CardinalityValue

基数

名称 类型 说明
LIST

string

list

SET

string

set

SINGLE

string

single

DateFormat

日期格式。

名称 类型 说明
availableLocales

string[]

可用区域设置的数组。

calendar

number

日历

dateInstance

DateFormat

日期格式。

dateTimeInstance

DateFormat

日期格式。

instance

DateFormat

日期格式。

lenient

boolean

确定日期格式的宽大度。

numberFormat

NumberFormat

数字格式。

timeInstance

DateFormat

日期格式。

timeZone

TimeZone

时区信息。

NumberFormat

数字格式。

名称 类型 说明
availableLocales

string[]

数字格式。

currency

string

货币。

currencyInstance

NumberFormat

数字格式。

groupingUsed

boolean

确定是否使用分组。

instance

NumberFormat

数字格式。

integerInstance

NumberFormat

数字格式。

maximumFractionDigits

integer

小数位数的最大值。

maximumIntegerDigits

integer

整数位数的最大值。

minimumFractionDigits

integer

小数位数的最小值。

minimumIntegerDigits

integer

整数位数的最小值。

numberInstance

NumberFormat

数字格式。

parseIntegerOnly

boolean

确定是否仅分析整数。

percentInstance

NumberFormat

数字格式。

roundingMode

RoundingMode

舍入模式的枚举。

RelationshipCategory

关系类别

名称 类型 说明
AGGREGATION

string

aggregation

ASSOCIATION

string

关联

COMPOSITION

string

组成

RoundingMode

舍入模式

名称 类型 说明
CEILING

string

ceiling

DOWN

string

FLOOR

string

floor

HALF_DOWN

string

一半向下

HALF_EVEN

string

一半偶数

HALF_UP

string

一半向上

UNNECESSARY

string

不必要

UP

string

已启动

TermTemplateDef

术语表术语的术语模板定义。

名称 类型 说明
attributeDefs

AtlasAttributeDef[]

属性定义的数组。

category

TypeCategory

类别类型的枚举。

createTime

integer

记录的创建时间。

createdBy

string

创建记录的用户。

dateFormatter

DateFormat

日期格式。

description

string

类型定义的说明。

guid

string

类型定义的 GUID。

lastModifiedTS

string

用于并发控制的 ETag。

name

string

类型定义的名称。

options

object

类型定义的选项。

serviceType

string

服务类型。

typeVersion

string

类型的版本。

updateTime

integer

记录的更新时间。

updatedBy

string

更新记录的用户。

version

integer

记录的版本。

TimeZone

时区信息。

名称 类型 说明
availableIds

string[]

可用 ID 的数组。

default

TimeZone

时区信息。

displayName

string

时区的显示名称。

dstSavings

integer

夏令时的值。

id

string

时区的 ID。

rawOffset

integer

时区的原始偏移量。

TypeCategory

类型类别

名称 类型 说明
ARRAY

string

array

CLASSIFICATION

string

分类

ENTITY

string

实体

ENUM

string

枚举

MAP

string

map

OBJECT_ID_TYPE

string

对象 ID 类型

PRIMITIVE

string

基元

RELATIONSHIP

string

关系 (relationship)

STRUCT

string

struct

TERM_TEMPLATE

string

术语模板