Compartilhar via


Type - Bulk Create

Crie todas as definições de tipo atlas em massa, somente novas definições serão criadas. Todas as alterações nas definições existentes serão descartadas.

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

Parâmetros de URI

Nome Em Obrigatório Tipo Description
endpoint
path True

string

Corpo da solicitação

Nome Tipo Description
businessMetadataDefs

AtlasBusinessMetadataDef[]

businessMetadataDefs

classificationDefs

AtlasClassificationDef[]

Uma matriz de definições de classificação.

entityDefs

AtlasEntityDef[]

Uma matriz de definições de entidade.

enumDefs

AtlasEnumDef[]

Uma matriz de definições de enumeração.

relationshipDefs

AtlasRelationshipDef[]

Uma matriz de definições de relação.

structDefs

AtlasStructDef[]

Uma matriz de definições de struct.

termTemplateDefs

TermTemplateDef[]

Uma matriz de definições de modelo de termo.

Respostas

Nome Tipo Description
200 OK

AtlasTypesDef

A solicitação foi bem-sucedida.

Other Status Codes

AtlasErrorResponse

Uma resposta de erro inesperada.

Segurança

OAuth2Auth

Tipo: oauth2
Flow: implicit
URL de Autorização: https://login.microsoftonline.com/common/oauth2/authorize

Escopos

Nome Description
https://purview.azure.net/.default

Exemplos

Type_BulkCreate
Type_BulkCreateBusinessMetadataDefs

Type_BulkCreate

Solicitação de exemplo

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": []
}

Resposta de exemplo

{
  "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

Solicitação de exemplo

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\"]"
          }
        }
      ]
    }
  ]
}

Resposta de exemplo

{
  "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"
          }
        }
      ]
    }
  ]
}

Definições

Nome Description
AtlasAttributeDef

classe que captura detalhes de um atributo struct.

AtlasBusinessMetadataDef

classe que captura detalhes de um tipo de struct.

AtlasClassificationDef

classe que captura detalhes de um tipo de classificação.

AtlasConstraintDef

classe que captura detalhes de uma restrição.

AtlasEntityDef

classe que captura detalhes de um tipo de entidade.

AtlasEnumDef

classe que captura detalhes de um tipo de enumeração.

AtlasEnumElementDef

classe que captura detalhes de um elemento de enumeração.

AtlasErrorResponse

Uma resposta de erro do serviço

AtlasRelationshipAttributeDef

O relationshipEndDef representa o fim da relação. O final da relação é definido por um tipo, um nome de atributo, cardinalidade e se é o fim do contêiner da relação.

AtlasRelationshipDef

AtlasRelationshipDef é um TypeDef que define uma relação. Assim como acontece com outros typeDefs, o AtlasRelationshipDef tem um nome. Depois de criado, o RelationshipDef tem um guid. O nome e o guid são as duas maneiras pelas quais o RelationshipDef é identificado. RelationshipDefs têm duas extremidades, cada uma especificando cardinalidade, um nome e um nome de tipo EntityDef e, opcionalmente, se o final é um contêiner. RelationshipDefs pode ter AttributeDefs – embora apenas tipos primitivos sejam permitidos. RelationshipDefs tem uma relaçãoCategory especificando o tipo de relação UML necessário A maneira como EntityDefs e RelationshipDefs se destinam a ser usados é que EntityDefs definirá AttributeDefs esses AttributeDefs não especificarão um nome de tipo EntityDef como seus tipos. RelationshipDefs introduz novos atributos às instâncias de entidade. Por exemplo, EntityDef A pode ter atributos attr1,attr2,attr3

EntityDef B pode ter atributos attr4,attr5,attr6 RelationshipDef AtoB pode definir 2 extremidades

end1: tipo A, nome attr7 end2: tipo B, nome attr8

Quando uma instância de EntityDef A for criada, ela terá atributos attr1,attr2,attr3,attr7 Quando uma instância de EntityDef B for criada, ela terá atributos attr4,attr5,attr6,attr8

Dessa forma, relationshipDefs pode ser criado separadamente de entityDefs e pode injetar atributos de relação nas instâncias de entidade

AtlasRelationshipEndDef

O relationshipEndDef representa o fim da relação. O final da relação é definido por um tipo, um nome de atributo, cardinalidade e se é o fim do contêiner da relação.

AtlasStructDef

classe que captura detalhes de um tipo de struct.

AtlasTypesDef

As definições de tipos.

CardinalityValue

Cardinalidade

DateFormat

O formato de data.

NumberFormat

O formato de número.

RelationshipCategory

Categoria de Relação

RoundingMode

Modo de arredondamento

TermTemplateDef

Definição de modelo de termo para o termo glossário.

TimeZone

As informações de fuso horário.

TypeCategory

Categoria do tipo

AtlasAttributeDef

classe que captura detalhes de um atributo struct.

Nome Tipo Description
cardinality

CardinalityValue

atributo de valor único ou atributo de vários valores.

constraints

AtlasConstraintDef[]

Uma matriz de restrições.

defaultValue

string

O valor padrão do atributo.

description

string

A descrição do atributo.

includeInNotification

boolean

Determina se ele está incluído na notificação.

isIndexable

boolean

Determina se ele é indexável.

isOptional

boolean

Determina se ele é opcional.

isUnique

boolean

Determina se ele é exclusivo.

name

string

O nome do atributo.

options

object

As opções para o atributo.

typeName

string

O nome do tipo.

valuesMaxCount

integer

A contagem máxima dos valores.

valuesMinCount

integer

A contagem mínima dos valores.

AtlasBusinessMetadataDef

classe que captura detalhes de um tipo de struct.

Nome Tipo Description
attributeDefs

AtlasAttributeDef[]

Uma matriz de definições de atributo.

category

TypeCategory

A enumeração de categoria de tipo.

createTime

integer

A hora criada do registro.

createdBy

string

O usuário que criou o registro.

dateFormatter

DateFormat

O formato de data.

description

string

A descrição da definição de tipo.

guid

string

O GUID da definição de tipo.

lastModifiedTS

string

ETag para controle de simultaneidade.

name

string

O nome da definição de tipo.

options

object

As opções para a definição de tipo.

serviceType

string

O tipo de serviço.

typeVersion

string

A versão do tipo.

updateTime

integer

O tempo de atualização do registro.

updatedBy

string

O usuário que atualizou o registro.

version

integer

A versão do registro.

AtlasClassificationDef

classe que captura detalhes de um tipo de classificação.

Nome Tipo Description
attributeDefs

AtlasAttributeDef[]

Uma matriz de definições de atributo.

category

TypeCategory

A enumeração de categoria de tipo.

createTime

integer

A hora criada do registro.

createdBy

string

O usuário que criou o registro.

dateFormatter

DateFormat

O formato de data.

description

string

A descrição da definição de tipo.

entityTypes

string[]

Especificar uma lista de nomes entityType no classificationDef garante que as classificações só possam ser aplicadas a esses entityTypes.

Todos os subtipos dos tipos de entidade herdam a restrição.

Quaisquer subtipos classificationDef herdam as restrições de entityTypes dos pais.

Qualquer subtipo classificationDef pode restringir ainda mais as restrições de entityTypes de pais especificando um subconjunto dos entityTypes.

Uma lista de entityTypes vazia quando não há restrições pai significa que não há restrições.

Uma lista de entityTypes vazia quando há restrições pai significa que o subtipo pega as restrições dos pais.

Se uma lista de entityTypes for fornecida, em que um herda de outro, isso será rejeitado. Isso deve incentivar classificações mais limpasDefs.

guid

string

O GUID da definição de tipo.

lastModifiedTS

string

ETag para controle de simultaneidade.

name

string

O nome da definição de tipo.

options

object

As opções para a definição de tipo.

serviceType

string

O tipo de serviço.

subTypes

string[]

Uma matriz de subtipos.

superTypes

string[]

Uma matriz de super tipos.

typeVersion

string

A versão do tipo.

updateTime

integer

O tempo de atualização do registro.

updatedBy

string

O usuário que atualizou o registro.

version

integer

A versão do registro.

AtlasConstraintDef

classe que captura detalhes de uma restrição.

Nome Tipo Description
params

Os parâmetros da definição de restrição.

type

string

O tipo da restrição.

AtlasEntityDef

classe que captura detalhes de um tipo de entidade.

Nome Tipo Description
attributeDefs

AtlasAttributeDef[]

Uma matriz de definições de atributo.

category

TypeCategory

A enumeração de categoria de tipo.

createTime

integer

A hora criada do registro.

createdBy

string

O usuário que criou o registro.

dateFormatter

DateFormat

O formato de data.

description

string

A descrição da definição de tipo.

guid

string

O GUID da definição de tipo.

lastModifiedTS

string

ETag para controle de simultaneidade.

name

string

O nome da definição de tipo.

options

object

As opções para a definição de tipo.

relationshipAttributeDefs

AtlasRelationshipAttributeDef[]

Uma matriz de atributos de relação.

serviceType

string

O tipo de serviço.

subTypes

string[]

Uma matriz de subtipos.

superTypes

string[]

Uma matriz de super tipos.

typeVersion

string

A versão do tipo.

updateTime

integer

O tempo de atualização do registro.

updatedBy

string

O usuário que atualizou o registro.

version

integer

A versão do registro.

AtlasEnumDef

classe que captura detalhes de um tipo de enumeração.

Nome Tipo Description
category

TypeCategory

A enumeração de categoria de tipo.

createTime

integer

A hora criada do registro.

createdBy

string

O usuário que criou o registro.

dateFormatter

DateFormat

O formato de data.

defaultValue

string

O valor padrão.

description

string

A descrição da definição de tipo.

elementDefs

AtlasEnumElementDef[]

Uma matriz de definições de elemento de enumeração.

guid

string

O GUID da definição de tipo.

lastModifiedTS

string

ETag para controle de simultaneidade.

name

string

O nome da definição de tipo.

options

object

As opções para a definição de tipo.

serviceType

string

O tipo de serviço.

typeVersion

string

A versão do tipo.

updateTime

integer

O tempo de atualização do registro.

updatedBy

string

O usuário que atualizou o registro.

version

integer

A versão do registro.

AtlasEnumElementDef

classe que captura detalhes de um elemento de enumeração.

Nome Tipo Description
description

string

A descrição da definição do elemento enumeração.

ordinal

integer

O ordinal da definição de elemento de enumeração.

value

string

O valor da definição do elemento de enumeração.

AtlasErrorResponse

Uma resposta de erro do serviço

Nome Tipo Description
errorCode

string

O código de erro.

errorMessage

string

A mensagem de erro.

requestId

string

A ID da solicitação.

AtlasRelationshipAttributeDef

O relationshipEndDef representa o fim da relação. O final da relação é definido por um tipo, um nome de atributo, cardinalidade e se é o fim do contêiner da relação.

Nome Tipo Description
cardinality

CardinalityValue

atributo de valor único ou atributo de vários valores.

constraints

AtlasConstraintDef[]

Uma matriz de restrições.

defaultValue

string

O valor padrão do atributo.

description

string

A descrição do atributo.

includeInNotification

boolean

Determina se ele está incluído na notificação.

isIndexable

boolean

Determina se ele é indexável.

isLegacyAttribute

boolean

Determina se é um atributo herdado.

isOptional

boolean

Determina se ele é opcional.

isUnique

boolean

Determina se ele é exclusivo.

name

string

O nome do atributo.

options

object

As opções para o atributo.

relationshipTypeName

string

O nome do tipo de relação.

typeName

string

O nome do tipo.

valuesMaxCount

integer

A contagem máxima dos valores.

valuesMinCount

integer

A contagem mínima dos valores.

AtlasRelationshipDef

AtlasRelationshipDef é um TypeDef que define uma relação. Assim como acontece com outros typeDefs, o AtlasRelationshipDef tem um nome. Depois de criado, o RelationshipDef tem um guid. O nome e o guid são as duas maneiras pelas quais o RelationshipDef é identificado. RelationshipDefs têm duas extremidades, cada uma especificando cardinalidade, um nome e um nome de tipo EntityDef e, opcionalmente, se o final é um contêiner. RelationshipDefs pode ter AttributeDefs – embora apenas tipos primitivos sejam permitidos. RelationshipDefs tem uma relaçãoCategory especificando o tipo de relação UML necessário A maneira como EntityDefs e RelationshipDefs se destinam a ser usados é que EntityDefs definirá AttributeDefs esses AttributeDefs não especificarão um nome de tipo EntityDef como seus tipos. RelationshipDefs introduz novos atributos às instâncias de entidade. Por exemplo, EntityDef A pode ter atributos attr1,attr2,attr3

EntityDef B pode ter atributos attr4,attr5,attr6 RelationshipDef AtoB pode definir 2 extremidades

end1: tipo A, nome attr7 end2: tipo B, nome attr8

Quando uma instância de EntityDef A for criada, ela terá atributos attr1,attr2,attr3,attr7 Quando uma instância de EntityDef B for criada, ela terá atributos attr4,attr5,attr6,attr8

Dessa forma, relationshipDefs pode ser criado separadamente de entityDefs e pode injetar atributos de relação nas instâncias de entidade

Nome Tipo Description
attributeDefs

AtlasAttributeDef[]

Uma matriz de definições de atributo.

category

TypeCategory

A enumeração de categoria de tipo.

createTime

integer

A hora criada do registro.

createdBy

string

O usuário que criou o registro.

dateFormatter

DateFormat

O formato de data.

description

string

A descrição da definição de tipo.

endDef1

AtlasRelationshipEndDef

O relationshipEndDef representa o fim da relação. O final da relação é definido por um tipo, um nome de atributo, cardinalidade e se é o fim do contêiner da relação.

endDef2

AtlasRelationshipEndDef

O relationshipEndDef representa o fim da relação. O final da relação é definido por um tipo, um nome de atributo, cardinalidade e se é o fim do contêiner da relação.

guid

string

O GUID da definição de tipo.

lastModifiedTS

string

ETag para controle de simultaneidade.

name

string

O nome da definição de tipo.

options

object

As opções para a definição de tipo.

relationshipCategory

RelationshipCategory

A categoria Relação determina o estilo de relação em torno da contenção e do ciclo de vida. A terminologia UML é usada para os valores. ASSOCIATION é uma relação sem contenção. COMPOSITION e AGGREGATION são relações de contenção. A diferença está nos ciclos de vida do contêiner e de seus filhos. No caso COMPOSITION, os filhos não podem existir sem o contêiner. Para Agregação, os ciclos de vida do contêiner e dos filhos são totalmente independentes.

relationshipLabel

string

O rótulo da relação.

serviceType

string

O tipo de serviço.

typeVersion

string

A versão do tipo.

updateTime

integer

O tempo de atualização do registro.

updatedBy

string

O usuário que atualizou o registro.

version

integer

A versão do registro.

AtlasRelationshipEndDef

O relationshipEndDef representa o fim da relação. O final da relação é definido por um tipo, um nome de atributo, cardinalidade e se é o fim do contêiner da relação.

Nome Tipo Description
cardinality

CardinalityValue

atributo de valor único ou atributo de vários valores.

description

string

A descrição da definição de término da relação.

isContainer

boolean

Determina se é um contêiner.

isLegacyAttribute

boolean

Determina se é um atributo herdado.

name

string

O nome da definição de término da relação.

type

string

O tipo do fim da relação.

AtlasStructDef

classe que captura detalhes de um tipo de struct.

Nome Tipo Description
attributeDefs

AtlasAttributeDef[]

Uma matriz de definições de atributo.

category

TypeCategory

A enumeração de categoria de tipo.

createTime

integer

A hora criada do registro.

createdBy

string

O usuário que criou o registro.

dateFormatter

DateFormat

O formato de data.

description

string

A descrição da definição de tipo.

guid

string

O GUID da definição de tipo.

lastModifiedTS

string

ETag para controle de simultaneidade.

name

string

O nome da definição de tipo.

options

object

As opções para a definição de tipo.

serviceType

string

O tipo de serviço.

typeVersion

string

A versão do tipo.

updateTime

integer

O tempo de atualização do registro.

updatedBy

string

O usuário que atualizou o registro.

version

integer

A versão do registro.

AtlasTypesDef

As definições de tipos.

Nome Tipo Description
businessMetadataDefs

AtlasBusinessMetadataDef[]

businessMetadataDefs

classificationDefs

AtlasClassificationDef[]

Uma matriz de definições de classificação.

entityDefs

AtlasEntityDef[]

Uma matriz de definições de entidade.

enumDefs

AtlasEnumDef[]

Uma matriz de definições de enumeração.

relationshipDefs

AtlasRelationshipDef[]

Uma matriz de definições de relação.

structDefs

AtlasStructDef[]

Uma matriz de definições de struct.

termTemplateDefs

TermTemplateDef[]

Uma matriz de definições de modelo de termo.

CardinalityValue

Cardinalidade

Nome Tipo Description
LIST

string

list

SET

string

set

SINGLE

string

único

DateFormat

O formato de data.

Nome Tipo Description
availableLocales

string[]

Uma matriz de localidades disponíveis.

calendar

number

Calendário

dateInstance

DateFormat

O formato de data.

dateTimeInstance

DateFormat

O formato de data.

instance

DateFormat

O formato de data.

lenient

boolean

Determina a leniência do formato de data.

numberFormat

NumberFormat

O formato de número.

timeInstance

DateFormat

O formato de data.

timeZone

TimeZone

As informações de fuso horário.

NumberFormat

O formato de número.

Nome Tipo Description
availableLocales

string[]

O formato de número.

currency

string

A moeda.

currencyInstance

NumberFormat

O formato de número.

groupingUsed

boolean

Determina se o agrupamento é usado.

instance

NumberFormat

O formato de número.

integerInstance

NumberFormat

O formato de número.

maximumFractionDigits

integer

O máximo de dígitos de fração.

maximumIntegerDigits

integer

O máximo de dígitos inteiros.

minimumFractionDigits

integer

O mínimo de dígitos de fração.

minimumIntegerDigits

integer

O mínimo de dígitos inteiros.

numberInstance

NumberFormat

O formato de número.

parseIntegerOnly

boolean

Determina se apenas o inteiro é analisado.

percentInstance

NumberFormat

O formato de número.

roundingMode

RoundingMode

A enumeração do modo de arredondamento.

RelationshipCategory

Categoria de Relação

Nome Tipo Description
AGGREGATION

string

agregação

ASSOCIATION

string

associação

COMPOSITION

string

Composição

RoundingMode

Modo de arredondamento

Nome Tipo Description
CEILING

string

ceiling

DOWN

string

ligar

FLOOR

string

floor

HALF_DOWN

string

metade para baixo

HALF_EVEN

string

metade mesmo

HALF_UP

string

metade para cima

UNNECESSARY

string

desnecessário

UP

string

ativo

TermTemplateDef

Definição de modelo de termo para o termo glossário.

Nome Tipo Description
attributeDefs

AtlasAttributeDef[]

Uma matriz de definições de atributo.

category

TypeCategory

A enumeração de categoria de tipo.

createTime

integer

A hora criada do registro.

createdBy

string

O usuário que criou o registro.

dateFormatter

DateFormat

O formato de data.

description

string

A descrição da definição de tipo.

guid

string

O GUID da definição de tipo.

lastModifiedTS

string

ETag para controle de simultaneidade.

name

string

O nome da definição de tipo.

options

object

As opções para a definição de tipo.

serviceType

string

O tipo de serviço.

typeVersion

string

A versão do tipo.

updateTime

integer

O tempo de atualização do registro.

updatedBy

string

O usuário que atualizou o registro.

version

integer

A versão do registro.

TimeZone

As informações de fuso horário.

Nome Tipo Description
availableIds

string[]

Uma matriz de IDs disponíveis.

default

TimeZone

As informações de fuso horário.

displayName

string

O nome de exibição do fuso horário.

dstSavings

integer

O valor do horário de verão.

id

string

A ID do fuso horário.

rawOffset

integer

O deslocamento bruto do fuso horário.

TypeCategory

Categoria do tipo

Nome Tipo Description
ARRAY

string

array

CLASSIFICATION

string

classificação

ENTITY

string

entidade

ENUM

string

enum

MAP

string

mapa

OBJECT_ID_TYPE

string

tipo de ID de objeto

PRIMITIVE

string

Primitivo

RELATIONSHIP

string

relação

STRUCT

string

struct

TERM_TEMPLATE

string

modelo de termo