Condividi tramite


Type - Bulk Create

Creare tutte le definizioni dei tipi atlas in blocco, verranno create solo nuove definizioni. Tutte le modifiche apportate alle definizioni esistenti verranno eliminate.

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

Parametri dell'URI

Nome In Necessario Tipo Descrizione
endpoint
path True

string

Corpo della richiesta

Nome Tipo Descrizione
businessMetadataDefs

AtlasBusinessMetadataDef[]

businessMetadataDefs

classificationDefs

AtlasClassificationDef[]

Matrice di definizioni di classificazione.

entityDefs

AtlasEntityDef[]

Matrice di definizioni di entità.

enumDefs

AtlasEnumDef[]

Matrice di definizioni di enumerazione.

relationshipDefs

AtlasRelationshipDef[]

Matrice di definizioni di relazione.

structDefs

AtlasStructDef[]

Matrice di definizioni di struct.

termTemplateDefs

TermTemplateDef[]

Matrice di definizioni di modello di termine.

Risposte

Nome Tipo Descrizione
200 OK

AtlasTypesDef

La richiesta ha avuto esito positivo.

Other Status Codes

AtlasErrorResponse

Risposta di errore imprevista.

Sicurezza

OAuth2Auth

Tipo: oauth2
Flow: implicit
URL di autorizzazione: https://login.microsoftonline.com/common/oauth2/authorize

Ambiti

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

Esempio

Type_BulkCreate
Type_BulkCreateBusinessMetadataDefs

Type_BulkCreate

Esempio di richiesta

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

Risposta di esempio

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

Esempio di richiesta

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

Risposta di esempio

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

Definizioni

Nome Descrizione
AtlasAttributeDef

classe che acquisisce i dettagli di un attributo struct.

AtlasBusinessMetadataDef

classe che acquisisce i dettagli di un tipo struct.

AtlasClassificationDef

classe che acquisisce i dettagli di un tipo di classificazione.

AtlasConstraintDef

classe che acquisisce i dettagli di un vincolo.

AtlasEntityDef

classe che acquisisce i dettagli di un tipo di entità.

AtlasEnumDef

classe che acquisisce i dettagli di un tipo enumerazione.

AtlasEnumElementDef

classe che acquisisce i dettagli di un elemento enum.

AtlasErrorResponse

Risposta di errore dal servizio

AtlasRelationshipAttributeDef

RelationshipEndDef rappresenta una fine della relazione. La fine della relazione è definita da un tipo, un nome di attributo, una cardinalità e un valore che indica se è la fine del contenitore della relazione.

AtlasRelationshipDef

AtlasRelationshipDef è un TypeDef che definisce una relazione. Come per altri typeDef, AtlasRelationshipDef ha un nome. Dopo aver creato RelationshipDef, è presente un GUID. Il nome e il GUID sono i 2 modi in cui viene identificato RelationshipDef. RelationshipDefs ha 2 terminazioni, ognuna delle quali specifica la cardinalità, un nome e un nome di tipo EntityDef e, facoltativamente, se la fine è un contenitore. RelationshipDefs può avere AttributeDefs, anche se sono consentiti solo tipi primitivi. RelationshipDefs ha una relazioneCategory che specifica il tipo UML della relazione obbligatoria. Il modo in cui EntityDefs e RelationshipDefs devono essere usati è che EntityDefs definirà AttributeDefs questi AttributeDefs che non specificano un nome di tipo EntityDef come tipi. RelationshipDefs introduce nuovi attributi alle istanze di entità. Ad esempio EntityDef A potrebbe avere attributi attr1,attr2,attr3

EntityDef B potrebbe avere attributi attr4,attr5,attr6 RelationshipDef AtoB potrebbe definire 2 terminazioni

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

Quando viene creata un'istanza di EntityDef A, avrà attributi attr1,attr2,attr3,attr7 Quando viene creata un'istanza di EntityDef B, avrà attributi attr4,attr5,attr6,attr8

In questo modo relationshipDefs può essere creato separatamente da entityDefs e può inserire attributi di relazione nelle istanze di entità

AtlasRelationshipEndDef

RelationshipEndDef rappresenta una fine della relazione. La fine della relazione è definita da un tipo, un nome di attributo, una cardinalità e un valore che indica se è la fine del contenitore della relazione.

AtlasStructDef

classe che acquisisce i dettagli di un tipo struct.

AtlasTypesDef

Definizioni di tipi.

CardinalityValue

Cardinalità

DateFormat

Formato della data.

NumberFormat

Formato numerico.

RelationshipCategory

Categoria relazione

RoundingMode

Modalità di arrotondamento

TermTemplateDef

Definizione del modello di termine per il termine di glossario.

TimeZone

Informazioni sul fuso orario.

TypeCategory

Categoria del tipo

AtlasAttributeDef

classe che acquisisce i dettagli di un attributo struct.

Nome Tipo Descrizione
cardinality

CardinalityValue

attributo a valore singolo o attributo multivalore.

constraints

AtlasConstraintDef[]

Matrice di vincoli.

defaultValue

string

Valore predefinito dell'attributo.

description

string

Descrizione dell'attributo.

includeInNotification

boolean

Determina se è incluso nella notifica.

isIndexable

boolean

Determina se è indicizzabile.

isOptional

boolean

Determina se è facoltativo.

isUnique

boolean

Determina se è univoco.

name

string

Nome dell'attributo.

options

object

Opzioni per l'attributo .

typeName

string

Nome del tipo.

valuesMaxCount

integer

Conteggio massimo dei valori.

valuesMinCount

integer

Conteggio minimo dei valori.

AtlasBusinessMetadataDef

classe che acquisisce i dettagli di un tipo struct.

Nome Tipo Descrizione
attributeDefs

AtlasAttributeDef[]

Matrice di definizioni di attributi.

category

TypeCategory

Enumerazione di tipo category.

createTime

integer

Ora di creazione del record.

createdBy

string

Utente che ha creato il record.

dateFormatter

DateFormat

Formato della data.

description

string

Descrizione della definizione del tipo.

guid

string

GUID della definizione del tipo.

lastModifiedTS

string

ETag per il controllo della concorrenza.

name

string

Nome della definizione del tipo.

options

object

Opzioni per la definizione del tipo.

serviceType

string

Tipo di servizio.

typeVersion

string

Versione del tipo.

updateTime

integer

Ora di aggiornamento del record.

updatedBy

string

Utente che ha aggiornato il record.

version

integer

Versione del record.

AtlasClassificationDef

classe che acquisisce i dettagli di un tipo di classificazione.

Nome Tipo Descrizione
attributeDefs

AtlasAttributeDef[]

Matrice di definizioni di attributi.

category

TypeCategory

Enumerazione di tipo category.

createTime

integer

Ora di creazione del record.

createdBy

string

Utente che ha creato il record.

dateFormatter

DateFormat

Formato della data.

description

string

Descrizione della definizione del tipo.

entityTypes

string[]

Se si specifica un elenco di nomi entityType in classificationDef, si garantisce che le classificazioni possano essere applicate solo a tali entityType.

Tutti i sottotipi dei tipi di entità ereditano la restrizione.

Tutti i sottotipi classificationDef ereditano le restrizioni entityTypes padre.

Qualsiasi sottotipo classificationDef può limitare ulteriormente le restrizioni entityTypes padre specificando un subset di entityTypes.

Un elenco entityTypes vuoto quando non sono presenti restrizioni padre significa che non sono previste restrizioni.

Un elenco entityTypes vuoto quando sono presenti restrizioni padre significa che il sottotipo seleziona le restrizioni padre.

Se viene fornito un elenco di entityTypes, in cui uno eredita da un altro, verrà rifiutato. Ciò dovrebbe incoraggiare le classificazioni più puliteDefs.

guid

string

GUID della definizione del tipo.

lastModifiedTS

string

ETag per il controllo della concorrenza.

name

string

Nome della definizione del tipo.

options

object

Opzioni per la definizione del tipo.

serviceType

string

Tipo di servizio.

subTypes

string[]

Matrice di sottotipi.

superTypes

string[]

Matrice di tipi avanzati.

typeVersion

string

Versione del tipo.

updateTime

integer

Ora di aggiornamento del record.

updatedBy

string

Utente che ha aggiornato il record.

version

integer

Versione del record.

AtlasConstraintDef

classe che acquisisce i dettagli di un vincolo.

Nome Tipo Descrizione
params

Parametri della definizione del vincolo.

type

string

Tipo del vincolo.

AtlasEntityDef

classe che acquisisce i dettagli di un tipo di entità.

Nome Tipo Descrizione
attributeDefs

AtlasAttributeDef[]

Matrice di definizioni di attributi.

category

TypeCategory

Enumerazione di tipo category.

createTime

integer

Ora di creazione del record.

createdBy

string

Utente che ha creato il record.

dateFormatter

DateFormat

Formato della data.

description

string

Descrizione della definizione del tipo.

guid

string

GUID della definizione del tipo.

lastModifiedTS

string

ETag per il controllo della concorrenza.

name

string

Nome della definizione del tipo.

options

object

Opzioni per la definizione del tipo.

relationshipAttributeDefs

AtlasRelationshipAttributeDef[]

Matrice di attributi di relazione.

serviceType

string

Tipo di servizio.

subTypes

string[]

Matrice di sottotipi.

superTypes

string[]

Matrice di tipi avanzati.

typeVersion

string

Versione del tipo.

updateTime

integer

Ora di aggiornamento del record.

updatedBy

string

Utente che ha aggiornato il record.

version

integer

Versione del record.

AtlasEnumDef

classe che acquisisce i dettagli di un tipo enumerazione.

Nome Tipo Descrizione
category

TypeCategory

Enumerazione di tipo category.

createTime

integer

Ora di creazione del record.

createdBy

string

Utente che ha creato il record.

dateFormatter

DateFormat

Formato della data.

defaultValue

string

Il valore predefinito.

description

string

Descrizione della definizione del tipo.

elementDefs

AtlasEnumElementDef[]

Matrice di definizioni di elementi enum.

guid

string

GUID della definizione del tipo.

lastModifiedTS

string

ETag per il controllo della concorrenza.

name

string

Nome della definizione del tipo.

options

object

Opzioni per la definizione del tipo.

serviceType

string

Tipo di servizio.

typeVersion

string

Versione del tipo.

updateTime

integer

Ora di aggiornamento del record.

updatedBy

string

Utente che ha aggiornato il record.

version

integer

Versione del record.

AtlasEnumElementDef

classe che acquisisce i dettagli di un elemento enum.

Nome Tipo Descrizione
description

string

Descrizione della definizione dell'elemento enum.

ordinal

integer

Ordinale della definizione dell'elemento enum.

value

string

Valore della definizione dell'elemento enum.

AtlasErrorResponse

Risposta di errore dal servizio

Nome Tipo Descrizione
errorCode

string

Codice di errore.

errorMessage

string

Messaggio di errore.

requestId

string

ID richiesta.

AtlasRelationshipAttributeDef

RelationshipEndDef rappresenta una fine della relazione. La fine della relazione è definita da un tipo, un nome di attributo, una cardinalità e un valore che indica se è la fine del contenitore della relazione.

Nome Tipo Descrizione
cardinality

CardinalityValue

attributo a valore singolo o attributo multivalore.

constraints

AtlasConstraintDef[]

Matrice di vincoli.

defaultValue

string

Valore predefinito dell'attributo.

description

string

Descrizione dell'attributo.

includeInNotification

boolean

Determina se è incluso nella notifica.

isIndexable

boolean

Determina se è indicizzabile.

isLegacyAttribute

boolean

Determina se è un attributo legacy.

isOptional

boolean

Determina se è facoltativo.

isUnique

boolean

Determina se è univoco.

name

string

Nome dell'attributo.

options

object

Opzioni per l'attributo .

relationshipTypeName

string

Nome del tipo di relazione.

typeName

string

Nome del tipo.

valuesMaxCount

integer

Conteggio massimo dei valori.

valuesMinCount

integer

Conteggio minimo dei valori.

AtlasRelationshipDef

AtlasRelationshipDef è un TypeDef che definisce una relazione. Come per altri typeDef, AtlasRelationshipDef ha un nome. Dopo aver creato RelationshipDef, è presente un GUID. Il nome e il GUID sono i 2 modi in cui viene identificato RelationshipDef. RelationshipDefs ha 2 terminazioni, ognuna delle quali specifica la cardinalità, un nome e un nome di tipo EntityDef e, facoltativamente, se la fine è un contenitore. RelationshipDefs può avere AttributeDefs, anche se sono consentiti solo tipi primitivi. RelationshipDefs ha una relazioneCategory che specifica il tipo UML della relazione obbligatoria. Il modo in cui EntityDefs e RelationshipDefs devono essere usati è che EntityDefs definirà AttributeDefs questi AttributeDefs che non specificano un nome di tipo EntityDef come tipi. RelationshipDefs introduce nuovi attributi alle istanze di entità. Ad esempio EntityDef A potrebbe avere attributi attr1,attr2,attr3

EntityDef B potrebbe avere attributi attr4,attr5,attr6 RelationshipDef AtoB potrebbe definire 2 terminazioni

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

Quando viene creata un'istanza di EntityDef A, avrà attributi attr1,attr2,attr3,attr7 Quando viene creata un'istanza di EntityDef B, avrà attributi attr4,attr5,attr6,attr8

In questo modo relationshipDefs può essere creato separatamente da entityDefs e può inserire attributi di relazione nelle istanze di entità

Nome Tipo Descrizione
attributeDefs

AtlasAttributeDef[]

Matrice di definizioni di attributi.

category

TypeCategory

Enumerazione di tipo category.

createTime

integer

Ora di creazione del record.

createdBy

string

Utente che ha creato il record.

dateFormatter

DateFormat

Formato della data.

description

string

Descrizione della definizione del tipo.

endDef1

AtlasRelationshipEndDef

RelationshipEndDef rappresenta una fine della relazione. La fine della relazione è definita da un tipo, un nome di attributo, una cardinalità e un valore che indica se è la fine del contenitore della relazione.

endDef2

AtlasRelationshipEndDef

RelationshipEndDef rappresenta una fine della relazione. La fine della relazione è definita da un tipo, un nome di attributo, una cardinalità e un valore che indica se è la fine del contenitore della relazione.

guid

string

GUID della definizione del tipo.

lastModifiedTS

string

ETag per il controllo della concorrenza.

name

string

Nome della definizione del tipo.

options

object

Opzioni per la definizione del tipo.

relationshipCategory

RelationshipCategory

La categoria Relazione determina lo stile della relazione intorno al contenimento e al ciclo di vita. La terminologia UML viene usata per i valori. ASSOCIATION è una relazione senza contenimento. COMPOSITION e AGGREGATION sono relazioni di contenimento. Differenza nei cicli di vita del contenitore e dei relativi elementi figlio. Nel caso COMPOSITION, gli elementi figlio non possono esistere senza il contenitore. Per AGGREGATION, i cicli di vita del contenitore e degli elementi figlio sono totalmente indipendenti.

relationshipLabel

string

Etichetta della relazione.

serviceType

string

Tipo di servizio.

typeVersion

string

Versione del tipo.

updateTime

integer

Ora di aggiornamento del record.

updatedBy

string

Utente che ha aggiornato il record.

version

integer

Versione del record.

AtlasRelationshipEndDef

RelationshipEndDef rappresenta una fine della relazione. La fine della relazione è definita da un tipo, un nome di attributo, una cardinalità e un valore che indica se è la fine del contenitore della relazione.

Nome Tipo Descrizione
cardinality

CardinalityValue

attributo a valore singolo o attributo multivalore.

description

string

Descrizione della definizione di fine della relazione.

isContainer

boolean

Determina se è contenitore.

isLegacyAttribute

boolean

Determina se è un attributo legacy.

name

string

Nome della definizione di fine della relazione.

type

string

Tipo della fine della relazione.

AtlasStructDef

classe che acquisisce i dettagli di un tipo struct.

Nome Tipo Descrizione
attributeDefs

AtlasAttributeDef[]

Matrice di definizioni di attributi.

category

TypeCategory

Enumerazione di tipo category.

createTime

integer

Ora di creazione del record.

createdBy

string

Utente che ha creato il record.

dateFormatter

DateFormat

Formato della data.

description

string

Descrizione della definizione del tipo.

guid

string

GUID della definizione del tipo.

lastModifiedTS

string

ETag per il controllo della concorrenza.

name

string

Nome della definizione del tipo.

options

object

Opzioni per la definizione del tipo.

serviceType

string

Tipo di servizio.

typeVersion

string

Versione del tipo.

updateTime

integer

Ora di aggiornamento del record.

updatedBy

string

Utente che ha aggiornato il record.

version

integer

Versione del record.

AtlasTypesDef

Definizioni di tipi.

Nome Tipo Descrizione
businessMetadataDefs

AtlasBusinessMetadataDef[]

businessMetadataDefs

classificationDefs

AtlasClassificationDef[]

Matrice di definizioni di classificazione.

entityDefs

AtlasEntityDef[]

Matrice di definizioni di entità.

enumDefs

AtlasEnumDef[]

Matrice di definizioni di enumerazione.

relationshipDefs

AtlasRelationshipDef[]

Matrice di definizioni di relazione.

structDefs

AtlasStructDef[]

Matrice di definizioni di struct.

termTemplateDefs

TermTemplateDef[]

Matrice di definizioni di modello di termine.

CardinalityValue

Cardinalità

Nome Tipo Descrizione
LIST

string

list

SET

string

set

SINGLE

string

single

DateFormat

Formato della data.

Nome Tipo Descrizione
availableLocales

string[]

Matrice di impostazioni locali disponibili.

calendar

number

Calendario

dateInstance

DateFormat

Formato della data.

dateTimeInstance

DateFormat

Formato della data.

instance

DateFormat

Formato della data.

lenient

boolean

Determina la leggienza del formato di data.

numberFormat

NumberFormat

Formato numerico.

timeInstance

DateFormat

Formato della data.

timeZone

TimeZone

Informazioni sul fuso orario.

NumberFormat

Formato numerico.

Nome Tipo Descrizione
availableLocales

string[]

Formato numerico.

currency

string

Valuta.

currencyInstance

NumberFormat

Formato numerico.

groupingUsed

boolean

Determina se viene utilizzato il raggruppamento.

instance

NumberFormat

Formato numerico.

integerInstance

NumberFormat

Formato numerico.

maximumFractionDigits

integer

Numero massimo di cifre frazionarie.

maximumIntegerDigits

integer

Numero massimo di cifre intere.

minimumFractionDigits

integer

Numero minimo di cifre frazionarie.

minimumIntegerDigits

integer

Numero minimo di cifre intere.

numberInstance

NumberFormat

Formato numerico.

parseIntegerOnly

boolean

Determina se viene analizzato solo integer.

percentInstance

NumberFormat

Formato numerico.

roundingMode

RoundingMode

Enumerazione della modalità di arrotondamento.

RelationshipCategory

Categoria relazione

Nome Tipo Descrizione
AGGREGATION

string

aggregation

ASSOCIATION

string

associazione

COMPOSITION

string

Composizione

RoundingMode

Modalità di arrotondamento

Nome Tipo Descrizione
CEILING

string

ceiling

DOWN

string

sistema

FLOOR

string

floor

HALF_DOWN

string

metà giù

HALF_EVEN

string

metà pari

HALF_UP

string

metà su

UNNECESSARY

string

non necessario

UP

string

up

TermTemplateDef

Definizione del modello di termine per il termine di glossario.

Nome Tipo Descrizione
attributeDefs

AtlasAttributeDef[]

Matrice di definizioni di attributi.

category

TypeCategory

Enumerazione di tipo category.

createTime

integer

Ora di creazione del record.

createdBy

string

Utente che ha creato il record.

dateFormatter

DateFormat

Formato della data.

description

string

Descrizione della definizione del tipo.

guid

string

GUID della definizione del tipo.

lastModifiedTS

string

ETag per il controllo della concorrenza.

name

string

Nome della definizione del tipo.

options

object

Opzioni per la definizione del tipo.

serviceType

string

Tipo di servizio.

typeVersion

string

Versione del tipo.

updateTime

integer

Ora di aggiornamento del record.

updatedBy

string

Utente che ha aggiornato il record.

version

integer

Versione del record.

TimeZone

Informazioni sul fuso orario.

Nome Tipo Descrizione
availableIds

string[]

Matrice di ID disponibili.

default

TimeZone

Informazioni sul fuso orario.

displayName

string

Nome visualizzato del fuso orario.

dstSavings

integer

Valore dell'ora legale.

id

string

ID del fuso orario.

rawOffset

integer

Offset non elaborato del fuso orario.

TypeCategory

Categoria del tipo

Nome Tipo Descrizione
ARRAY

string

array

CLASSIFICATION

string

classificazione

ENTITY

string

Entità

ENUM

string

enum

MAP

string

map

OBJECT_ID_TYPE

string

tipo id oggetto

PRIMITIVE

string

primitivi

RELATIONSHIP

string

relazione

STRUCT

string

struct

TERM_TEMPLATE

string

modello di termine