Type - Bulk Create
Создание всех определений типов atlas в массовом режиме. Не создавайте существующие типы.
POST {endpoint}/datamap/api/atlas/v2/types/typedefs
Параметры URI
Имя | В | Обязательно | Тип | Описание |
---|---|---|---|---|
endpoint
|
path | True |
string (uri) |
Текст запроса
Имя | Тип | Описание |
---|---|---|
businessMetadataDefs |
businessMetadataDefs |
|
classificationDefs |
Массив определений классификации. |
|
entityDefs |
Массив определений сущностей. |
|
enumDefs |
Массив определений перечисления. |
|
relationshipDefs |
Массив определений связей. |
|
structDefs |
Массив определений структур. |
|
termTemplateDefs |
Массив определений шаблонов терминов. |
Ответы
Имя | Тип | Описание |
---|---|---|
200 OK |
Запрос выполнен успешно. |
|
Other Status Codes |
Непредвиденное сообщение об ошибке. |
Безопасность
OAuth2Auth
Тип:
oauth2
Flow:
implicit
URL-адрес авторизации:
https://login.microsoftonline.com/common/oauth2/authorize
Области
Имя | Описание |
---|---|
https://purview.azure.net/.default |
Примеры
Type_Bulk |
Type_Bulk |
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"
}
}
]
}
]
}
Определения
Имя | Описание |
---|---|
Atlas |
класс, который записывает сведения о атрибуте структуры. |
Atlas |
класс, который записывает сведения о типе структуры. |
Atlas |
класс, который записывает сведения о типе классификации. |
Atlas |
класс, который записывает сведения об ограничении. |
Atlas |
класс, который записывает сведения о типе сущности. |
Atlas |
класс, который записывает сведения о типе перечисления. |
Atlas |
класс, который записывает сведения об элементе перечисления. |
Atlas |
Ответ об ошибке службы |
Atlas |
СвязьEndDef представляет конец связи. Конец связи определяется типом, именем атрибута, кратностью и тем, является ли это конец связи контейнером. |
Atlas |
AtlasRelationshipDef — это типDef, определяющий связь. Как и в других типахDefs, у AtlasRelationshipDef есть имя. После создания RelationshipDef имеет guid. Имя и guid — это 2 способа, которыми определяется RelationshipDef. RelationshipDefs имеет 2 конца, каждый из которых указывает кратность, имя и имя типа EntityDef, а также, при необходимости, является ли конец контейнером. RelationshipDefs может иметь AttributeDefs, хотя разрешены только примитивные типы. RelationshipDefs имеет связьCategory, указывающую тип связи UML, необходимый для использования EntityDefs и RelationshipDefs, заключается в том, что EntityDefs будет определять AttributeDefs эти атрибутыDefs, которые не будут указывать имя типа EntityDef в качестве их типов. RelationshipDefs вводит новые атрибуты для экземпляров сущностей. Например, EntityDef A может иметь атрибуты attr1,attr2,attr3 EntityDef B может иметь атрибуты attr4,attr5,attr6 RelationshipDef AtoB может определить 2 конца end1: type A, name attr7 end2: type B, name attr8 При создании экземпляра EntityDef A он будет иметь атрибуты attr1,attr2,attr3,attr3,attr7 При создании экземпляра EntityDef B он будет иметь атрибуты attr4,attr4,attr5,attr6,attr8 Таким образом, связьDefs может быть создана отдельно от entityDefs и может внедрять атрибуты связи в экземпляры сущностей. |
Atlas |
СвязьEndDef представляет конец связи. Конец связи определяется типом, именем атрибута, кратностью и тем, является ли это конец связи контейнером. |
Atlas |
класс, который записывает сведения о типе структуры. |
Atlas |
Определения типов. |
Cardinality |
Мощность |
Date |
Формат даты. |
Number |
Формат числа. |
Relationship |
Категория отношений |
Rounding |
Режим округления |
Term |
Определение шаблона термина для терминов глоссария. |
Time |
Сведения о часовом поясе. |
Type |
Категория типов |
AtlasAttributeDef
класс, который записывает сведения о атрибуте структуры.
Имя | Тип | Описание |
---|---|---|
cardinality |
атрибут с одним значением или многозначный атрибут. |
|
constraints |
Массив ограничений. |
|
defaultValue |
string |
Значение атрибута по умолчанию. |
description |
string |
Описание атрибута. |
includeInNotification |
boolean |
Определяет, включена ли она в уведомление. |
isIndexable |
boolean |
Определяет, можно ли индексировать. |
isOptional |
boolean |
Определяет, является ли он необязательным. |
isUnique |
boolean |
Определяет, является ли он уникальным. |
name |
string |
Имя атрибута. |
options |
object |
Параметры атрибута. |
typeName |
string |
Имя типа. |
valuesMaxCount |
integer (int32) |
Максимальное количество значений. |
valuesMinCount |
integer (int32) |
Минимальное количество значений. |
AtlasBusinessMetadataDef
класс, который записывает сведения о типе структуры.
Имя | Тип | Описание |
---|---|---|
attributeDefs |
Массив определений атрибутов. |
|
category |
Перечисление категории типов. |
|
createTime |
integer (int64) |
Время создания записи. |
createdBy |
string |
Пользователь, создавший запись. |
dateFormatter |
Формат даты. |
|
description |
string |
Описание определения типа. |
guid |
string |
GUID определения типа. |
lastModifiedTS |
string |
ETag для элемента управления параллелизмом. |
name |
string |
Имя определения типа. |
options |
object |
Параметры определения типа. |
serviceType |
string |
Тип службы. |
typeVersion |
string |
Версия типа. |
updateTime |
integer (int64) |
Время обновления записи. |
updatedBy |
string |
Пользователь, который обновил запись. |
version |
integer (int64) |
Версия записи. |
AtlasClassificationDef
класс, который записывает сведения о типе классификации.
Имя | Тип | Описание |
---|---|---|
attributeDefs |
Массив определений атрибутов. |
|
category |
Перечисление категории типов. |
|
createTime |
integer (int64) |
Время создания записи. |
createdBy |
string |
Пользователь, создавший запись. |
dateFormatter |
Формат даты. |
|
description |
string |
Описание определения типа. |
entityTypes |
string[] |
Указание списка имен entityType в классификации гарантирует, что классификации можно применять только к этим сущностям. Все подтипы типов сущностей наследуют ограничение. Все подтипы классификации наследуют ограничения entityTypes родителей. Любые подтипы классификации могут дополнительно ограничить ограничения entityTypes родителей, указав подмножество сущностейTypes. Пустой список entityTypes, если родительские ограничения отсутствуют, значит нет ограничений. Пустой список entityTypes при наличии родительских ограничений означает, что подтип выбирает ограничения родителей. Если указан список сущностейTypes, где один наследует от другого, это будет отклонено. Это должно поощрять более чистые классификацииDefs. |
guid |
string |
GUID определения типа. |
lastModifiedTS |
string |
ETag для элемента управления параллелизмом. |
name |
string |
Имя определения типа. |
options |
object |
Параметры определения типа. |
serviceType |
string |
Тип службы. |
subTypes |
string[] |
Массив подтипов. |
superTypes |
string[] |
Массив супертипов. |
typeVersion |
string |
Версия типа. |
updateTime |
integer (int64) |
Время обновления записи. |
updatedBy |
string |
Пользователь, который обновил запись. |
version |
integer (int64) |
Версия записи. |
AtlasConstraintDef
класс, который записывает сведения об ограничении.
Имя | Тип | Описание |
---|---|---|
params |
Параметры определения ограничения. |
|
type |
string |
Тип ограничения. |
AtlasEntityDef
класс, который записывает сведения о типе сущности.
Имя | Тип | Описание |
---|---|---|
attributeDefs |
Массив определений атрибутов. |
|
category |
Перечисление категории типов. |
|
createTime |
integer (int64) |
Время создания записи. |
createdBy |
string |
Пользователь, создавший запись. |
dateFormatter |
Формат даты. |
|
description |
string |
Описание определения типа. |
guid |
string |
GUID определения типа. |
lastModifiedTS |
string |
ETag для элемента управления параллелизмом. |
name |
string |
Имя определения типа. |
options |
object |
Параметры определения типа. |
relationshipAttributeDefs |
Массив атрибутов связи. |
|
serviceType |
string |
Тип службы. |
subTypes |
string[] |
Массив подтипов. |
superTypes |
string[] |
Массив супертипов. |
typeVersion |
string |
Версия типа. |
updateTime |
integer (int64) |
Время обновления записи. |
updatedBy |
string |
Пользователь, который обновил запись. |
version |
integer (int64) |
Версия записи. |
AtlasEnumDef
класс, который записывает сведения о типе перечисления.
Имя | Тип | Описание |
---|---|---|
category |
Перечисление категории типов. |
|
createTime |
integer (int64) |
Время создания записи. |
createdBy |
string |
Пользователь, создавший запись. |
dateFormatter |
Формат даты. |
|
defaultValue |
string |
Значение по умолчанию. |
description |
string |
Описание определения типа. |
elementDefs |
Массив определений элементов перечисления. |
|
guid |
string |
GUID определения типа. |
lastModifiedTS |
string |
ETag для элемента управления параллелизмом. |
name |
string |
Имя определения типа. |
options |
object |
Параметры определения типа. |
serviceType |
string |
Тип службы. |
typeVersion |
string |
Версия типа. |
updateTime |
integer (int64) |
Время обновления записи. |
updatedBy |
string |
Пользователь, который обновил запись. |
version |
integer (int64) |
Версия записи. |
AtlasEnumElementDef
класс, который записывает сведения об элементе перечисления.
Имя | Тип | Описание |
---|---|---|
description |
string |
Описание определения элемента перечисления. |
ordinal |
integer (int32) |
Порядковый номер определения элемента перечисления. |
value |
string |
Значение определения элемента перечисления. |
AtlasErrorResponse
Ответ об ошибке службы
Имя | Тип | Описание |
---|---|---|
errorCode |
string |
Код ошибки. |
errorMessage |
string |
Сообщение об ошибке. |
requestId |
string (uuid) |
Идентификатор запроса. |
AtlasRelationshipAttributeDef
СвязьEndDef представляет конец связи. Конец связи определяется типом, именем атрибута, кратностью и тем, является ли это конец связи контейнером.
Имя | Тип | Описание |
---|---|---|
cardinality |
атрибут с одним значением или многозначный атрибут. |
|
constraints |
Массив ограничений. |
|
defaultValue |
string |
Значение атрибута по умолчанию. |
description |
string |
Описание атрибута. |
includeInNotification |
boolean |
Определяет, включена ли она в уведомление. |
isIndexable |
boolean |
Определяет, можно ли индексировать. |
isLegacyAttribute |
boolean |
Определяет, является ли он устаревшим атрибутом. |
isOptional |
boolean |
Определяет, является ли он необязательным. |
isUnique |
boolean |
Определяет, является ли он уникальным. |
name |
string |
Имя атрибута. |
options |
object |
Параметры атрибута. |
relationshipTypeName |
string |
Имя типа связи. |
typeName |
string |
Имя типа. |
valuesMaxCount |
integer (int32) |
Максимальное количество значений. |
valuesMinCount |
integer (int32) |
Минимальное количество значений. |
AtlasRelationshipDef
AtlasRelationshipDef — это типDef, определяющий связь. Как и в других типахDefs, у AtlasRelationshipDef есть имя. После создания RelationshipDef имеет guid. Имя и guid — это 2 способа, которыми определяется RelationshipDef. RelationshipDefs имеет 2 конца, каждый из которых указывает кратность, имя и имя типа EntityDef, а также, при необходимости, является ли конец контейнером. RelationshipDefs может иметь AttributeDefs, хотя разрешены только примитивные типы. RelationshipDefs имеет связьCategory, указывающую тип связи UML, необходимый для использования EntityDefs и RelationshipDefs, заключается в том, что EntityDefs будет определять AttributeDefs эти атрибутыDefs, которые не будут указывать имя типа EntityDef в качестве их типов. RelationshipDefs вводит новые атрибуты для экземпляров сущностей. Например, EntityDef A может иметь атрибуты attr1,attr2,attr3
EntityDef B может иметь атрибуты attr4,attr5,attr6 RelationshipDef AtoB может определить 2 конца
end1: type A, name attr7 end2: type B, name attr8
При создании экземпляра EntityDef A он будет иметь атрибуты attr1,attr2,attr3,attr3,attr7 При создании экземпляра EntityDef B он будет иметь атрибуты attr4,attr4,attr5,attr6,attr8
Таким образом, связьDefs может быть создана отдельно от entityDefs и может внедрять атрибуты связи в экземпляры сущностей.
Имя | Тип | Описание |
---|---|---|
attributeDefs |
Массив определений атрибутов. |
|
category |
Перечисление категории типов. |
|
createTime |
integer (int64) |
Время создания записи. |
createdBy |
string |
Пользователь, создавший запись. |
dateFormatter |
Формат даты. |
|
description |
string |
Описание определения типа. |
endDef1 |
СвязьEndDef представляет конец связи. Конец связи определяется типом, именем атрибута, кратностью и тем, является ли это конец связи контейнером. |
|
endDef2 |
СвязьEndDef представляет конец связи. Конец связи определяется типом, именем атрибута, кратностью и тем, является ли это конец связи контейнером. |
|
guid |
string |
GUID определения типа. |
lastModifiedTS |
string |
ETag для элемента управления параллелизмом. |
name |
string |
Имя определения типа. |
options |
object |
Параметры определения типа. |
relationshipCategory |
Категория отношений определяет стиль отношений вокруг сдерживания и жизненного цикла. Терминология UML используется для значений. ASSOCIATION — это связь без сдерживания. COMPOSITION и AGGREGATION — это связи с привязкой. Разница в жизненном цикле контейнера и его дочерних объектов. В случае COMPOSITION дочерние элементы не могут существовать без контейнера. Для AGGREGATION жизненные циклы контейнера и дочерних объектов полностью независимы. |
|
relationshipLabel |
string |
Метка связи. |
serviceType |
string |
Тип службы. |
typeVersion |
string |
Версия типа. |
updateTime |
integer (int64) |
Время обновления записи. |
updatedBy |
string |
Пользователь, который обновил запись. |
version |
integer (int64) |
Версия записи. |
AtlasRelationshipEndDef
СвязьEndDef представляет конец связи. Конец связи определяется типом, именем атрибута, кратностью и тем, является ли это конец связи контейнером.
Имя | Тип | Описание |
---|---|---|
cardinality |
атрибут с одним значением или многозначный атрибут. |
|
description |
string |
Описание определения конца связи. |
isContainer |
boolean |
Определяет, является ли он контейнером. |
isLegacyAttribute |
boolean |
Определяет, является ли он устаревшим атрибутом. |
name |
string |
Имя конечного определения связи. |
type |
string |
Тип конца связи. |
AtlasStructDef
класс, который записывает сведения о типе структуры.
Имя | Тип | Описание |
---|---|---|
attributeDefs |
Массив определений атрибутов. |
|
category |
Перечисление категории типов. |
|
createTime |
integer (int64) |
Время создания записи. |
createdBy |
string |
Пользователь, создавший запись. |
dateFormatter |
Формат даты. |
|
description |
string |
Описание определения типа. |
guid |
string |
GUID определения типа. |
lastModifiedTS |
string |
ETag для элемента управления параллелизмом. |
name |
string |
Имя определения типа. |
options |
object |
Параметры определения типа. |
serviceType |
string |
Тип службы. |
typeVersion |
string |
Версия типа. |
updateTime |
integer (int64) |
Время обновления записи. |
updatedBy |
string |
Пользователь, который обновил запись. |
version |
integer (int64) |
Версия записи. |
AtlasTypesDef
Определения типов.
Имя | Тип | Описание |
---|---|---|
businessMetadataDefs |
businessMetadataDefs |
|
classificationDefs |
Массив определений классификации. |
|
entityDefs |
Массив определений сущностей. |
|
enumDefs |
Массив определений перечисления. |
|
relationshipDefs |
Массив определений связей. |
|
structDefs |
Массив определений структур. |
|
termTemplateDefs |
Массив определений шаблонов терминов. |
CardinalityValue
Мощность
Значение | Описание |
---|---|
LIST |
список |
SET |
набор |
SINGLE |
единственный |
DateFormat
Формат даты.
Имя | Тип | Описание |
---|---|---|
availableLocales |
string[] |
Массив доступных языковых стандартов. |
calendar |
number (float) |
Календарь |
dateInstance |
Формат даты. |
|
dateTimeInstance |
Формат даты. |
|
instance |
Формат даты. |
|
lenient |
boolean |
Определяет ленивость формата даты. |
numberFormat |
Формат числа. |
|
timeInstance |
Формат даты. |
|
timeZone |
Сведения о часовом поясе. |
NumberFormat
Формат числа.
Имя | Тип | Описание |
---|---|---|
availableLocales |
string[] |
Формат числа. |
currency |
string |
Валюта. |
currencyInstance |
Формат числа. |
|
groupingUsed |
boolean |
Определяет, используется ли группирование. |
instance |
Формат числа. |
|
integerInstance |
Формат числа. |
|
maximumFractionDigits |
integer (int32) |
Максимальное число цифр дроби. |
maximumIntegerDigits |
integer (int32) |
Максимальное число целых цифр. |
minimumFractionDigits |
integer (int32) |
Минимум цифр дроби. |
minimumIntegerDigits |
integer (int32) |
Минимальное целочисленное число цифр. |
numberInstance |
Формат числа. |
|
parseIntegerOnly |
boolean |
Определяет, выполняется ли синтаксический анализ только целочисленного числа. |
percentInstance |
Формат числа. |
|
roundingMode |
Перечисление режима округления. |
RelationshipCategory
Категория отношений
Значение | Описание |
---|---|
AGGREGATION |
агрегация |
ASSOCIATION |
связь |
COMPOSITION |
состав |
RoundingMode
Режим округления
Значение | Описание |
---|---|
CEILING |
потолок |
DOWN |
вниз |
FLOOR |
floor |
HALF_DOWN |
половина вниз |
HALF_EVEN |
половина даже |
HALF_UP |
половина вверх |
UNNECESSARY |
ненужный |
UP |
вверх |
TermTemplateDef
Определение шаблона термина для терминов глоссария.
Имя | Тип | Описание |
---|---|---|
attributeDefs |
Массив определений атрибутов. |
|
category |
Перечисление категории типов. |
|
createTime |
integer (int64) |
Время создания записи. |
createdBy |
string |
Пользователь, создавший запись. |
dateFormatter |
Формат даты. |
|
description |
string |
Описание определения типа. |
guid |
string |
GUID определения типа. |
lastModifiedTS |
string |
ETag для элемента управления параллелизмом. |
name |
string |
Имя определения типа. |
options |
object |
Параметры определения типа. |
serviceType |
string |
Тип службы. |
typeVersion |
string |
Версия типа. |
updateTime |
integer (int64) |
Время обновления записи. |
updatedBy |
string |
Пользователь, который обновил запись. |
version |
integer (int64) |
Версия записи. |
TimeZone
Сведения о часовом поясе.
Имя | Тип | Описание |
---|---|---|
availableIds |
string[] |
Массив доступных идентификаторов. |
default |
Сведения о часовом поясе. |
|
displayName |
string |
Отображаемое имя часового пояса. |
dstSavings |
integer (int32) |
Значение летнего времени. |
id |
string |
Идентификатор часового пояса. |
rawOffset |
integer (int32) |
Необработанное смещение часового пояса. |
TypeCategory
Категория типов
Значение | Описание |
---|---|
ARRAY |
массив |
CLASSIFICATION |
классификация |
ENTITY |
Сущность |
ENUM |
перечисление |
MAP |
карта |
OBJECT_ID_TYPE |
Тип идентификатора объекта |
PRIMITIVE |
примитивный |
RELATIONSHIP |
отношение |
STRUCT |
Структура |
TERM_TEMPLATE |
шаблон терминов |