다음을 통해 공유


Data Sources - Create

새 데이터 원본을 만듭니다.

POST {endpoint}/datasources?api-version=2024-07-01

URI 매개 변수

Name In(다음 안에) 필수 형식 Description
endpoint
path True

string

검색 서비스의 엔드포인트 URL입니다.

api-version
query True

string

클라이언트 API 버전입니다.

요청 헤더

Name 필수 형식 Description
x-ms-client-request-id

string

uuid

디버깅에 도움이 되도록 요청과 함께 전송된 추적 ID입니다.

요청 본문

Name 필수 형식 Description
container True

SearchIndexerDataContainer

데이터 원본의 데이터 컨테이너입니다.

credentials True

DataSourceCredentials

데이터 원본에 대한 자격 증명입니다.

name True

string

데이터 원본의 이름입니다.

type True

SearchIndexerDataSourceType

데이터 원본의 형식입니다.

@odata.etag

string

데이터 원본의 ETag입니다.

dataChangeDetectionPolicy DataChangeDetectionPolicy:

데이터 원본에 대한 데이터 변경 검색 정책입니다.

dataDeletionDetectionPolicy DataDeletionDetectionPolicy:

SoftDeleteColumnDeletionDetectionPolicy

데이터 원본에 대한 데이터 삭제 검색 정책입니다.

description

string

데이터 원본에 대한 설명입니다.

encryptionKey

SearchResourceEncryptionKey

Azure Key Vault에서 만드는 암호화 키에 대한 설명입니다. 이 키는 Microsoft를 비롯한 누구도 데이터 원본 정의를 해독할 수 없다는 완전한 보증을 원할 때 데이터 원본 정의에 대한 추가 수준의 미사용 암호화를 제공하는 데 사용됩니다. 데이터 원본 정의를 암호화한 후에는 항상 암호화된 상태로 유지됩니다. 검색 서비스는 이 속성을 null로 설정하려는 시도를 무시합니다. 암호화 키를 회전하려는 경우 필요에 따라 이 속성을 변경할 수 있습니다. 데이터 원본 정의는 영향을 받지 않습니다. 고객 관리형 키를 사용한 암호화는 무료 검색 서비스에 사용할 수 없으며 2019년 1월 1일 이후 생성된 유료 서비스에만 사용할 수 있습니다.

응답

Name 형식 Description
201 Created

SearchIndexerDataSource

Other Status Codes

ErrorResponse

오류 응답입니다.

예제

SearchServiceCreateDataSource

샘플 요청

POST https://myservice.search.windows.net/datasources?api-version=2024-07-01

{
  "name": "mydocdbdatasource",
  "description": "My Cosmos DB data source.",
  "type": "cosmosdb",
  "credentials": {
    "connectionString": "AccountEndpoint=https://myDocDbEndpoint.documents.azure.com;AccountKey=myDocDbAuthKey;Database=myDocDbDatabaseId"
  },
  "container": {
    "name": "myDocDbCollectionId",
    "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts"
  },
  "dataChangeDetectionPolicy": {
    "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy",
    "highWaterMarkColumnName": "_ts"
  },
  "dataDeletionDetectionPolicy": {
    "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy",
    "softDeleteColumnName": "isDeleted",
    "softDeleteMarkerValue": "true"
  },
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  }
}

샘플 응답

{
  "name": "mydocdbdatasource",
  "description": "My Cosmos DB data source.",
  "type": "cosmosdb",
  "credentials": {
    "connectionString": null
  },
  "container": {
    "name": "myDocDbCollectionId",
    "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts"
  },
  "dataChangeDetectionPolicy": {
    "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy",
    "highWaterMarkColumnName": "_ts"
  },
  "dataDeletionDetectionPolicy": {
    "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy",
    "softDeleteColumnName": "isDeleted",
    "softDeleteMarkerValue": "true"
  },
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": null
    }
  }
}

정의

Name Description
AzureActiveDirectoryApplicationCredentials

Azure Key Vault에 저장된 암호화 키에 대한 인증된 액세스에 사용되는 검색 서비스에 대해 생성된 등록된 애플리케이션의 자격 증명입니다.

DataSourceCredentials

데이터 원본에 연결하는 데 사용할 수 있는 자격 증명을 나타냅니다.

ErrorAdditionalInfo

리소스 관리 오류 추가 정보입니다.

ErrorDetail

오류 세부 정보입니다.

ErrorResponse

오류 응답

HighWaterMarkChangeDetectionPolicy

높은 워터 마크 열의 값에 따라 변경 내용을 캡처하는 데이터 변경 검색 정책을 정의합니다.

SearchIndexerDataContainer

인덱싱할 엔터티(예: Azure SQL 테이블 또는 CosmosDB 컬렉션)에 대한 정보를 나타냅니다.

SearchIndexerDataSource

인덱서 구성에 사용할 수 있는 데이터 원본 정의를 나타냅니다.

SearchIndexerDataSourceType

데이터 원본의 형식을 정의합니다.

SearchResourceEncryptionKey

Azure Key Vault의 고객 관리형 암호화 키입니다. 만들고 관리하는 키를 사용하여 인덱스 및 동의어 맵과 같은 미사용 데이터를 암호화하거나 암호 해독할 수 있습니다.

SoftDeleteColumnDeletionDetectionPolicy

일시 삭제 전략을 구현하는 데이터 삭제 검색 정책을 정의합니다. 지정된 '일시 삭제' 열의 값에 따라 항목을 삭제해야 하는지 여부를 결정합니다.

SqlIntegratedChangeTrackingPolicy

Azure SQL Database의 통합 변경 내용 추적 기능을 사용하여 변경 내용을 캡처하는 데이터 변경 검색 정책을 정의합니다.

AzureActiveDirectoryApplicationCredentials

Azure Key Vault에 저장된 암호화 키에 대한 인증된 액세스에 사용되는 검색 서비스에 대해 생성된 등록된 애플리케이션의 자격 증명입니다.

Name 형식 Description
applicationId

string

미사용 데이터를 암호화할 때 사용할 Azure Key Vault에 필요한 액세스 권한이 부여된 AAD 애플리케이션 ID입니다. 애플리케이션 ID는 AAD 애플리케이션의 개체 ID와 혼동해서는 안 됩니다.

applicationSecret

string

지정된 AAD 애플리케이션의 인증 키입니다.

DataSourceCredentials

데이터 원본에 연결하는 데 사용할 수 있는 자격 증명을 나타냅니다.

Name 형식 Description
connectionString

string

데이터 원본에 대한 연결 문자열입니다. 연결 문자열을 업데이트하지 않으려면 <unchanged>(대괄호 포함)로 설정합니다. 데이터 원본에서 연결 문자열 값을 제거하려면 <redacted> 설정합니다.

ErrorAdditionalInfo

리소스 관리 오류 추가 정보입니다.

Name 형식 Description
info

object

추가 정보입니다.

type

string

추가 정보 유형입니다.

ErrorDetail

오류 세부 정보입니다.

Name 형식 Description
additionalInfo

ErrorAdditionalInfo[]

오류 추가 정보입니다.

code

string

오류 코드입니다.

details

ErrorDetail[]

오류 세부 정보입니다.

message

string

오류 메시지입니다.

target

string

오류 대상입니다.

ErrorResponse

오류 응답

Name 형식 Description
error

ErrorDetail

오류 개체입니다.

HighWaterMarkChangeDetectionPolicy

높은 워터 마크 열의 값에 따라 변경 내용을 캡처하는 데이터 변경 검색 정책을 정의합니다.

Name 형식 Description
@odata.type string:

#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy

데이터 변경 검색 정책의 유형을 지정하는 URI 조각입니다.

highWaterMarkColumnName

string

상위 워터 마크 열의 이름입니다.

SearchIndexerDataContainer

인덱싱할 엔터티(예: Azure SQL 테이블 또는 CosmosDB 컬렉션)에 대한 정보를 나타냅니다.

Name 형식 Description
name

string

인덱싱할 테이블 또는 뷰(Azure SQL 데이터 원본의 경우) 또는 컬렉션(CosmosDB 데이터 원본의 경우)의 이름입니다.

query

string

이 데이터 컨테이너에 적용되는 쿼리입니다. 이 매개 변수의 구문과 의미는 데이터 원본에 따라 다릅니다. Azure SQL 데이터 원본에서 지원되지 않습니다.

SearchIndexerDataSource

인덱서 구성에 사용할 수 있는 데이터 원본 정의를 나타냅니다.

Name 형식 Description
@odata.etag

string

데이터 원본의 ETag입니다.

container

SearchIndexerDataContainer

데이터 원본의 데이터 컨테이너입니다.

credentials

DataSourceCredentials

데이터 원본에 대한 자격 증명입니다.

dataChangeDetectionPolicy DataChangeDetectionPolicy:

데이터 원본에 대한 데이터 변경 검색 정책입니다.

dataDeletionDetectionPolicy DataDeletionDetectionPolicy:

SoftDeleteColumnDeletionDetectionPolicy

데이터 원본에 대한 데이터 삭제 검색 정책입니다.

description

string

데이터 원본에 대한 설명입니다.

encryptionKey

SearchResourceEncryptionKey

Azure Key Vault에서 만드는 암호화 키에 대한 설명입니다. 이 키는 Microsoft를 비롯한 누구도 데이터 원본 정의를 해독할 수 없다는 완전한 보증을 원할 때 데이터 원본 정의에 대한 추가 수준의 미사용 암호화를 제공하는 데 사용됩니다. 데이터 원본 정의를 암호화한 후에는 항상 암호화된 상태로 유지됩니다. 검색 서비스는 이 속성을 null로 설정하려는 시도를 무시합니다. 암호화 키를 회전하려는 경우 필요에 따라 이 속성을 변경할 수 있습니다. 데이터 원본 정의는 영향을 받지 않습니다. 고객 관리형 키를 사용한 암호화는 무료 검색 서비스에 사용할 수 없으며 2019년 1월 1일 이후 생성된 유료 서비스에만 사용할 수 있습니다.

name

string

데이터 원본의 이름입니다.

type

SearchIndexerDataSourceType

데이터 원본의 형식입니다.

SearchIndexerDataSourceType

데이터 원본의 형식을 정의합니다.

Name 형식 Description
adlsgen2

string

ADLS Gen2 데이터 원본을 나타냅니다.

azureblob

string

Azure Blob 데이터 원본을 나타냅니다.

azuresql

string

Azure SQL 데이터 원본을 나타냅니다.

azuretable

string

Azure Table 데이터 원본을 나타냅니다.

cosmosdb

string

CosmosDB 데이터 원본을 나타냅니다.

mysql

string

MySql 데이터 원본을 나타냅니다.

SearchResourceEncryptionKey

Azure Key Vault의 고객 관리형 암호화 키입니다. 만들고 관리하는 키를 사용하여 인덱스 및 동의어 맵과 같은 미사용 데이터를 암호화하거나 암호 해독할 수 있습니다.

Name 형식 Description
accessCredentials

AzureActiveDirectoryApplicationCredentials

Azure Key Vault에 액세스하는 데 사용되는 선택적 Azure Active Directory 자격 증명입니다. 대신 관리 ID를 사용하는 경우에는 필요하지 않습니다.

keyVaultKeyName

string

미사용 데이터를 암호화하는 데 사용할 Azure Key Vault 키의 이름입니다.

keyVaultKeyVersion

string

미사용 데이터를 암호화하는 데 사용할 Azure Key Vault 키의 버전입니다.

keyVaultUri

string

미사용 데이터를 암호화하는 데 사용할 키를 포함하는 DNS 이름이라고도 하는 Azure Key Vault의 URI입니다. 예제 URI는 https://my-keyvault-name.vault.azure.net수 있습니다.

SoftDeleteColumnDeletionDetectionPolicy

일시 삭제 전략을 구현하는 데이터 삭제 검색 정책을 정의합니다. 지정된 '일시 삭제' 열의 값에 따라 항목을 삭제해야 하는지 여부를 결정합니다.

Name 형식 Description
@odata.type string:

#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy

데이터 삭제 검색 정책의 형식을 지정하는 URI 조각입니다.

softDeleteColumnName

string

일시 삭제 검색에 사용할 열의 이름입니다.

softDeleteMarkerValue

string

항목을 삭제된 것으로 식별하는 표식 값입니다.

SqlIntegratedChangeTrackingPolicy

Azure SQL Database의 통합 변경 내용 추적 기능을 사용하여 변경 내용을 캡처하는 데이터 변경 검색 정책을 정의합니다.

Name 형식 Description
@odata.type string:

#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy

데이터 변경 검색 정책의 유형을 지정하는 URI 조각입니다.