Entity - Bulk Create Or Update
엔터티를 대량으로 만들거나 업데이트합니다. 기존 엔터티는 제공된 경우 고유 GUID를 사용하거나 고유한 특성(예: qualifiedName)을 사용하여 일치합니다. 컬렉션의 맵 및 배열은 잘 지원되지 않습니다. 예를 들어 배열<배열<int>>, 배열<맵<문자열, int>>. 각 연락처 유형에 대해 최대 연락처 수는 20개입니다.
POST {endpoint}/datamap/api/atlas/v2/entity/bulk
POST {endpoint}/datamap/api/atlas/v2/entity/bulk?api-version=2023-09-01&collectionId={collectionId}&businessAttributeUpdateBehavior={businessAttributeUpdateBehavior}
URI 매개 변수
| Name | In(다음 안에) | 필수 | 형식 | Description |
|---|---|---|---|---|
|
endpoint
|
path | True |
string (uri) |
|
|
api-version
|
query |
string minLength: 1 |
이 작업에 사용할 API 버전입니다. |
|
|
business
|
query |
엔터티를 업데이트할 때 비즈니스 특성에 대한 업데이트 동작을 정의하는 데 사용됩니다. |
||
|
collection
|
query |
string |
엔터티를 이동할 컬렉션입니다. 엔터티를 다른 컬렉션으로 이동해야 하는 경우에만 값을 지정합니다. |
요청 본문
| Name | 형식 | Description |
|---|---|---|
| entities |
엔터티의 배열입니다. |
|
| referredEntities |
<string,
Atlas |
참조된 엔터티입니다. |
응답
| Name | 형식 | Description |
|---|---|---|
| 200 OK |
요청이 성공했습니다. |
|
| Other Status Codes |
예기치 않은 오류 응답입니다. |
보안
OAuth2Auth
형식:
oauth2
Flow:
implicit
권한 부여 URL:
https://login.microsoftonline.com/common/oauth2/authorize
범위
| Name | Description |
|---|---|
| https://purview.azure.net/.default |
예제
Entity_BulkCreateOrUpdate
샘플 요청
POST {endpoint}/datamap/api/atlas/v2/entity/bulk?api-version=2023-09-01
{
"referredEntities": {},
"entities": [
{
"typeName": "azure_storage_account",
"attributes": {
"owner": "ExampleOwner",
"modifiedTime": 0,
"createTime": 0,
"qualifiedName": "exampleaccount1",
"name": "ExampleStorageAccount1",
"description": null,
"publicAccessLevel": null
},
"contacts": {
"Expert": [
{
"id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df",
"info": "Example Expert Info"
}
],
"Owner": [
{
"id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df",
"info": "Example Owner Info"
}
]
},
"status": "ACTIVE",
"createdBy": "ExampleCreator",
"updatedBy": "ExampleUpdator",
"version": 0
},
{
"typeName": "azure_storage_account",
"attributes": {
"owner": "ExampleOwner",
"modifiedTime": 0,
"createTime": 0,
"qualifiedName": "exampleaccount2",
"name": "ExampleStorageAccount2",
"description": "Example Description",
"publicAccessLevel": null
},
"contacts": {
"Expert": [
{
"id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df",
"info": "Example Expert Info"
}
],
"Owner": [
{
"id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df",
"info": "Example Owner Info"
}
]
},
"status": "ACTIVE",
"createdBy": "ExampleCreator",
"updatedBy": "ExampleUpdator",
"version": 0
}
]
}
샘플 응답
{
"mutatedEntities": {
"UPDATE": [
{
"typeName": "azure_storage_account",
"attributes": {
"qualifiedName": "exampleaccount2"
},
"lastModifiedTS": "2",
"guid": "b2f9c306-cf65-4bb0-878e-cfaafde156b1",
"status": "ACTIVE"
}
],
"CREATE": [
{
"typeName": "azure_storage_account",
"attributes": {
"qualifiedName": "exampleaccount1"
},
"lastModifiedTS": "1",
"guid": "321493e3-3fb7-4b3e-9df7-3b69154174c2",
"status": "ACTIVE"
}
]
},
"guidAssignments": {
"-9514774903018192": "321493e3-3fb7-4b3e-9df7-3b69154174c2",
"-9514774903018193": "b2f9c306-cf65-4bb0-878e-cfaafde156b1"
}
}
정의
| Name | Description |
|---|---|
|
Atlas |
분류의 인스턴스입니다. ID가 없습니다. 이 개체는 엔터티와 연결된 경우에만 존재합니다. |
|
Atlas |
hive_table, hive_database 같은 확장 정보와 함께 엔터티의 인스턴스입니다. |
|
Atlas |
엔터티 인스턴스(예: hive_table, hive_database) |
|
Atlas |
엔터티 인스턴스(예: hive_table, hive_database) |
|
Atlas |
서비스의 오류 응답 |
|
Atlas |
용어 할당의 헤더입니다. |
|
Atlas |
용어 할당 상태 |
|
Business |
엔터티를 업데이트할 때 비즈니스 특성에 대한 업데이트 동작을 정의하는 데 사용됩니다. |
|
Entity |
엔터티의 변형 응답 결과입니다. |
|
Entity |
상태 - 활성 또는 삭제 가능 |
|
Time |
시간 경계 세부 정보를 캡처합니다. |
AtlasClassification
분류의 인스턴스입니다. ID가 없습니다. 이 개체는 엔터티와 연결된 경우에만 존재합니다.
| Name | 형식 | Description |
|---|---|---|
| attributes |
구조체의 특성입니다. |
|
| entityGuid |
string |
엔터티의 GUID입니다. |
| entityStatus |
엔터티의 상태 - 활성 또는 삭제할 수 있습니다. 삭제된 엔터티는 제거되지 않습니다. |
|
| lastModifiedTS |
string |
동시성 제어를 위한 ETag입니다. |
| removePropagationsOnEntityDelete |
boolean |
엔터티 삭제 시 전파가 제거될지 여부를 결정합니다. |
| typeName |
string |
형식의 이름입니다. |
| validityPeriods |
유효 기간을 나타내는 시간 경계의 배열입니다. |
AtlasEntitiesWithExtInfo
hive_table, hive_database 같은 확장 정보와 함께 엔터티의 인스턴스입니다.
| Name | 형식 | Description |
|---|---|---|
| entities |
엔터티의 배열입니다. |
|
| referredEntities |
<string,
Atlas |
참조된 엔터티입니다. |
AtlasEntity
엔터티 인스턴스(예: hive_table, hive_database)
| Name | 형식 | Description |
|---|---|---|
| attributes |
구조체의 특성입니다. |
|
| businessAttributes |
비즈니스 특성 |
|
| classifications |
분류의 배열입니다. |
|
| collectionId |
string |
엔터티의 컬렉션 ID입니다. |
| contacts |
object |
엔터티에 대한 연락처의 사전입니다. 키는 전문가 또는 소유자일 수 있습니다. |
| createTime |
integer (int64) |
레코드의 만든 시간입니다. |
| createdBy |
string |
레코드를 만든 사용자입니다. |
| customAttributes |
object |
사용자 지정 특성 |
| guid |
string |
엔터티의 GUID입니다. |
| homeId |
string |
엔터티의 홈 ID입니다. |
| isIncomplete |
boolean |
셸 엔터티인지 여부 |
| labels |
string[] |
레이블 |
| lastModifiedTS |
string |
동시성 제어를 위한 ETag입니다. |
| meanings |
엔터티의 의미를 나타내는 용어 할당 헤더의 배열입니다. |
|
| provenanceType |
integer (int32) |
엔터티 또는 관계 인스턴스의 출처를 기록하는 데 사용됩니다. |
| proxy |
boolean |
프록시가 있는지 확인합니다. |
| relationshipAttributes |
관계의 특성입니다. |
|
| status |
엔터티의 상태 - 활성 또는 삭제할 수 있습니다. 삭제된 엔터티는 제거되지 않습니다. |
|
| typeName |
string |
형식의 이름입니다. |
| updateTime |
integer (int64) |
레코드의 업데이트 시간입니다. |
| updatedBy |
string |
레코드를 업데이트한 사용자입니다. |
| version |
integer (int64) |
엔터티의 버전입니다. |
AtlasEntityHeader
엔터티 인스턴스(예: hive_table, hive_database)
| Name | 형식 | Description |
|---|---|---|
| attributes |
구조체의 특성입니다. |
|
| classificationNames |
string[] |
분류 이름의 배열입니다. |
| classifications |
분류의 배열입니다. |
|
| displayText |
string |
표시 텍스트입니다. |
| guid |
string |
레코드의 GUID입니다. |
| isIncomplete |
boolean |
셸 엔터티인지 여부 |
| labels |
string[] |
레이블 |
| lastModifiedTS |
string |
동시성 제어를 위한 ETag입니다. |
| meaningNames |
string[] |
의미의 배열입니다. |
| meanings |
용어 할당 헤더의 배열입니다. |
|
| status |
엔터티의 상태 - 활성 또는 삭제할 수 있습니다. 삭제된 엔터티는 제거되지 않습니다. |
|
| typeName |
string |
형식의 이름입니다. |
AtlasErrorResponse
서비스의 오류 응답
| Name | 형식 | Description |
|---|---|---|
| errorCode |
string |
오류 코드입니다. |
| errorMessage |
string |
오류 메시지입니다. |
| requestId |
string (uuid) |
요청 ID입니다. |
AtlasTermAssignmentHeader
용어 할당의 헤더입니다.
| Name | 형식 | Description |
|---|---|---|
| confidence |
integer (int32) |
용어 할당의 신뢰도입니다. |
| createdBy |
string |
레코드를 만든 사용자입니다. |
| description |
string |
용어 할당에 대한 설명입니다. |
| displayText |
string |
표시 텍스트입니다. |
| expression |
string |
용어 할당의 식입니다. |
| relationGuid |
string (uuid) |
관계의 GUID입니다. |
| status |
조건 할당의 상태입니다. |
|
| steward |
string |
용어의 청지기입니다. |
| termGuid |
string (uuid) |
용어의 GUID입니다. |
AtlasTermAssignmentStatus
용어 할당 상태
| 값 | Description |
|---|---|
| DISCOVERED |
상태가 검색됩니다. |
| PROPOSED |
상태가 제안됩니다. |
| IMPORTED |
상태를 가져옵니다. |
| VALIDATED |
상태의 유효성이 검사됩니다. |
| DEPRECATED |
상태는 더 이상 사용되지 않습니다. |
| OBSOLETE |
상태가 사용되지 않습니다. |
| OTHER |
기타 상태입니다. |
BusinessAttributeUpdateBehavior
엔터티를 업데이트할 때 비즈니스 특성에 대한 업데이트 동작을 정의하는 데 사용됩니다.
| 값 | Description |
|---|---|
| ignore |
업데이트에 대한 비즈니스 특성 페이로드를 무시합니다. |
| replace |
페이로드를 사용하여 모든 비즈니스 특성을 대체합니다. |
| merge |
비즈니스 특성을 병합합니다. 비즈니스 특성은 제공되지 않으면 업데이트되지 않습니다. |
EntityMutationResult
엔터티의 변형 응답 결과입니다.
| Name | 형식 | Description |
|---|---|---|
| guidAssignments |
object |
엔터티가 있는 GUID 할당의 맵입니다. |
| mutatedEntities |
object |
변경된 엔터티의 엔터티 헤더입니다. |
| partialUpdatedEntities |
부분적으로 업데이트된 엔터티 헤더의 배열입니다. |
EntityStatus
상태 - 활성 또는 삭제 가능
| 값 | Description |
|---|---|
| ACTIVE |
상태가 활성 상태입니다. |
| DELETED |
상태가 삭제됩니다. |
TimeBoundary
시간 경계 세부 정보를 캡처합니다.
| Name | 형식 | Description |
|---|---|---|
| endTime |
string |
시간 경계의 끝입니다. |
| startTime |
string |
시간 경계의 시작입니다. |
| timeZone |
string |
시간 경계의 표준 시간대입니다. |