Type - Bulk Create
Создание всех определений типов атласа в пакетном режиме. Будут созданы только новые определения. Все изменения существующих определений будут удалены.
POST {endpoint}/datamap/api/atlas/v2/types/typedefs
Параметры URI
Имя | В | Обязательно | Тип | Описание |
---|---|---|---|---|
endpoint
|
path | True |
string |
Текст запроса
Имя | Тип | Описание |
---|---|---|
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 |
RelationshipEndDef представляет конец связи. Конец связи определяется типом, именем атрибута, кратностью и тем, является ли он концом контейнера связи. |
Atlas |
AtlasRelationshipDef — это TypeDef, определяющий связь. Как и в других typeDefs, AtlasRelationshipDef имеет имя. После создания RelationshipDef имеет guid. Имя и guid — это 2 способа идентификации RelationshipDef. 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: type A, name attr7 end2: type B, name attr8 При создании экземпляра EntityDef A он будет иметь атрибуты attr1,attr2,attr3,attr7 При создании экземпляра EntityDef B он будет иметь атрибуты attr4,attr5,attr6,attr8. Таким образом, relationshipDefs можно создавать отдельно от entityDefs и внедрять атрибуты связи в экземпляры сущности. |
Atlas |
RelationshipEndDef представляет собой конец связи. Конец связи определяется типом, именем атрибута, кратностью и тем, является ли он концом контейнера связи. |
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 |
Максимальное число значений. |
valuesMinCount |
integer |
Минимальное количество значений. |
AtlasBusinessMetadataDef
класс, который захватывает сведения о типе структуры.
Имя | Тип | Описание |
---|---|---|
attributeDefs |
Массив определений атрибутов. |
|
category |
Перечисление категории типа. |
|
createTime |
integer |
Время создания записи. |
createdBy |
string |
Пользователь, создавший запись. |
dateFormatter |
Формат даты. |
|
description |
string |
Описание определения типа. |
guid |
string |
GUID определения типа. |
lastModifiedTS |
string |
ETag для управления параллелизмом. |
name |
string |
Имя определения типа. |
options |
object |
Параметры для определения типа. |
serviceType |
string |
Тип службы. |
typeVersion |
string |
Версия типа. |
updateTime |
integer |
Время обновления записи. |
updatedBy |
string |
Пользователь, который обновил запись. |
version |
integer |
Версия записи. |
AtlasClassificationDef
класс , который захватывает сведения о типе классификации.
Имя | Тип | Описание |
---|---|---|
attributeDefs |
Массив определений атрибутов. |
|
category |
Перечисление категории типа. |
|
createTime |
integer |
Время создания записи. |
createdBy |
string |
Пользователь, создавший запись. |
dateFormatter |
Формат даты. |
|
description |
string |
Описание определения типа. |
entityTypes |
string[] |
Указание списка имен entityType в classificationDef гарантирует, что классификации могут применяться только к этим типам сущностей. Все подтипы типов сущностей наследуют ограничение. Все подтипы classificationDef наследуют ограничения родительских entityTypes. Любые подтипы classificationDef могут дополнительно ограничить ограничения родительских entityTypes, указав подмножество entityTypes. Пустой список entityTypes при отсутствии родительских ограничений означает отсутствие ограничений. Пустой список entityTypes при наличии родительских ограничений означает, что подтип выбирает ограничения родителей. Если указан список entityTypes, где один наследуется от другого, он будет отклонен. Это должно способствовать более чистым классификациямDefs. |
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 |
Массив определений атрибутов. |
|
category |
Перечисление категории типа. |
|
createTime |
integer |
Время создания записи. |
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 |
Время обновления записи. |
updatedBy |
string |
Пользователь, который обновил запись. |
version |
integer |
Версия записи. |
AtlasEnumDef
класс, который захватывает сведения о типе перечисления.
Имя | Тип | Описание |
---|---|---|
category |
Перечисление категории типа. |
|
createTime |
integer |
Время создания записи. |
createdBy |
string |
Пользователь, создавший запись. |
dateFormatter |
Формат даты. |
|
defaultValue |
string |
Значение по умолчанию. |
description |
string |
Описание определения типа. |
elementDefs |
Массив определений элементов перечисления. |
|
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 |
Идентификатор запроса. |
AtlasRelationshipAttributeDef
RelationshipEndDef представляет конец связи. Конец связи определяется типом, именем атрибута, кратностью и тем, является ли он концом контейнера связи.
Имя | Тип | Описание |
---|---|---|
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 |
Максимальное число значений. |
valuesMinCount |
integer |
Минимальное количество значений. |
AtlasRelationshipDef
AtlasRelationshipDef — это TypeDef, определяющий связь. Как и в других typeDefs, AtlasRelationshipDef имеет имя. После создания RelationshipDef имеет guid. Имя и guid — это 2 способа идентификации RelationshipDef. 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: type A, name attr7 end2: type B, name attr8
При создании экземпляра EntityDef A он будет иметь атрибуты attr1,attr2,attr3,attr7 При создании экземпляра EntityDef B он будет иметь атрибуты attr4,attr5,attr6,attr8.
Таким образом, relationshipDefs можно создавать отдельно от entityDefs и внедрять атрибуты связи в экземпляры сущности.
Имя | Тип | Описание |
---|---|---|
attributeDefs |
Массив определений атрибутов. |
|
category |
Перечисление категории типа. |
|
createTime |
integer |
Время создания записи. |
createdBy |
string |
Пользователь, создавший запись. |
dateFormatter |
Формат даты. |
|
description |
string |
Описание определения типа. |
endDef1 |
RelationshipEndDef представляет конец связи. Конец связи определяется типом, именем атрибута, кратностью и тем, является ли это концом контейнера связи. |
|
endDef2 |
RelationshipEndDef представляет конец связи. Конец связи определяется типом, именем атрибута, кратностью и тем, является ли это концом контейнера связи. |
|
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 |
Время обновления записи. |
updatedBy |
string |
Пользователь, который обновил запись. |
version |
integer |
Версия записи. |
AtlasRelationshipEndDef
RelationshipEndDef представляет собой конец связи. Конец связи определяется типом, именем атрибута, кратностью и тем, является ли он концом контейнера связи.
Имя | Тип | Описание |
---|---|---|
cardinality |
Атрибут с одним значением или атрибут с несколькими значениями. |
|
description |
string |
Описание определения конца связи. |
isContainer |
boolean |
Определяет, является ли это контейнером. |
isLegacyAttribute |
boolean |
Определяет, является ли он устаревшим атрибутом. |
name |
string |
Имя определения конца связи. |
type |
string |
Тип конца связи. |
AtlasStructDef
класс, который захватывает сведения о типе структуры.
Имя | Тип | Описание |
---|---|---|
attributeDefs |
Массив определений атрибутов. |
|
category |
Перечисление категории типа. |
|
createTime |
integer |
Время создания записи. |
createdBy |
string |
Пользователь, создавший запись. |
dateFormatter |
Формат даты. |
|
description |
string |
Описание определения типа. |
guid |
string |
GUID определения типа. |
lastModifiedTS |
string |
ETag для управления параллелизмом. |
name |
string |
Имя определения типа. |
options |
object |
Параметры для определения типа. |
serviceType |
string |
Тип службы. |
typeVersion |
string |
Версия типа. |
updateTime |
integer |
Время обновления записи. |
updatedBy |
string |
Пользователь, который обновил запись. |
version |
integer |
Версия записи. |
AtlasTypesDef
Определения типов.
Имя | Тип | Описание |
---|---|---|
businessMetadataDefs |
businessMetadataDefs |
|
classificationDefs |
Массив определений классификации. |
|
entityDefs |
Массив определений сущностей. |
|
enumDefs |
Массив определений перечисления. |
|
relationshipDefs |
Массив определений связей. |
|
structDefs |
Массив определений структуры. |
|
termTemplateDefs |
Массив определений шаблонов терминов. |
CardinalityValue
Кратность
Имя | Тип | Описание |
---|---|---|
LIST |
string |
list |
SET |
string |
set |
SINGLE |
string |
single |
DateFormat
Формат даты.
Имя | Тип | Описание |
---|---|---|
availableLocales |
string[] |
Массив доступных языковых стандартов. |
calendar |
number |
Календарь |
dateInstance |
Формат даты. |
|
dateTimeInstance |
Формат даты. |
|
instance |
Формат даты. |
|
lenient |
boolean |
Определяет снисходичность формата даты. |
numberFormat |
Числовой формат. |
|
timeInstance |
Формат даты. |
|
timeZone |
Сведения о часовом поясе. |
NumberFormat
Числовой формат.
Имя | Тип | Описание |
---|---|---|
availableLocales |
string[] |
Числовой формат. |
currency |
string |
Валюта. |
currencyInstance |
Числовой формат. |
|
groupingUsed |
boolean |
Определяет, используется ли группирование. |
instance |
Числовой формат. |
|
integerInstance |
Числовой формат. |
|
maximumFractionDigits |
integer |
Максимальное число дробных цифр. |
maximumIntegerDigits |
integer |
Максимальное число целых цифр. |
minimumFractionDigits |
integer |
Минимум цифр дроби. |
minimumIntegerDigits |
integer |
Минимум целочисленных цифр. |
numberInstance |
Числовой формат. |
|
parseIntegerOnly |
boolean |
Определяет, анализируется ли только целое число. |
percentInstance |
Числовой формат. |
|
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 |
up |
TermTemplateDef
Определение шаблона термина для термина глоссария.
Имя | Тип | Описание |
---|---|---|
attributeDefs |
Массив определений атрибутов. |
|
category |
Перечисление категории типа. |
|
createTime |
integer |
Время создания записи. |
createdBy |
string |
Пользователь, создавший запись. |
dateFormatter |
Формат даты. |
|
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[] |
Массив доступных идентификаторов. |
default |
Сведения о часовом поясе. |
|
displayName |
string |
Отображаемое имя часового пояса. |
dstSavings |
integer |
Значение летнего времени. |
id |
string |
Идентификатор часового пояса. |
rawOffset |
integer |
Необработанное смещение часового пояса. |
TypeCategory
Категория типа
Имя | Тип | Описание |
---|---|---|
ARRAY |
string |
array |
CLASSIFICATION |
string |
классификация; |
ENTITY |
string |
сущность |
ENUM |
string |
enum |
MAP |
string |
карта |
OBJECT_ID_TYPE |
string |
Тип идентификатора объекта |
PRIMITIVE |
string |
примитив |
RELATIONSHIP |
string |
связь |
STRUCT |
string |
struct |
TERM_TEMPLATE |
string |
шаблон терминов |