다음을 통해 공유


Data Sources - Create Or Update

새 데이터 원본을 만들거나 데이터 원본이 이미 있는 경우 업데이트합니다.

PUT {endpoint}/datasources('{dataSourceName}')?api-version=2025-09-01

URI 매개 변수

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

string

생성하거나 업데이트할 데이터 원본의 이름입니다.

endpoint
path True

string

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

api-version
query True

string

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

요청 헤더

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

string (uuid)

디버깅을 돕기 위해 요청과 함께 전송된 추적 ID입니다.

If-Match

string

If-Match 조건을 정의합니다. 서버의 ETag가 이 값과 일치하는 경우에만 작업이 수행됩니다.

If-None-Match

string

If-None-Match 조건을 정의합니다. 서버의 ETag가 이 값과 일치하지 않는 경우에만 작업이 수행됩니다.

Prefer True

string

HTTP PUT 요청의 경우 성공 시 생성/업데이트된 리소스를 반환하도록 서비스에 지시합니다.

요청 본문

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
200 OK

SearchIndexerDataSource

201 Created

SearchIndexerDataSource

Other Status Codes

ErrorResponse

오류 응답입니다.

예제

SearchServiceCreateOrUpdateDataSource

샘플 요청

PUT https://stableexampleservice.search.windows.net/datasources('tempdatasource')?api-version=2025-09-01





{
  "name": "tempdatasource",
  "description": "My Azure Blob data source.",
  "type": "azureblob",
  "credentials": {
    "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net "
  },
  "container": {
    "name": "doc-extraction-skillset",
    "query": "E2E_Dsat"
  },
  "dataChangeDetectionPolicy": {
    "highWaterMarkColumnName": "metadata_storage_last_modified",
    "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy"
  },
  "dataDeletionDetectionPolicy": {
    "softDeleteColumnName": "isDeleted",
    "softDeleteMarkerValue": "true",
    "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy"
  },
  "@odata.etag": "0x1234568AE7E58A1"
}

샘플 응답

{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "tempdatasource",
  "description": "My Azure Blob data source.",
  "type": "azureblob",
  "credentials": {
    "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net "
  },
  "container": {
    "name": "doc-extraction-skillset",
    "query": "E2E_Dsat"
  },
  "dataChangeDetectionPolicy": {
    "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy",
    "highWaterMarkColumnName": "metadata_storage_last_modified"
  },
  "dataDeletionDetectionPolicy": {
    "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy",
    "softDeleteColumnName": "isDeleted",
    "softDeleteMarkerValue": "true"
  }
}
{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "tempdatasource",
  "description": "My Azure Blob data source.",
  "type": "azureblob",
  "credentials": {
    "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net "
  },
  "container": {
    "name": "doc-extraction-skillset",
    "query": "E2E_Dsat"
  },
  "dataChangeDetectionPolicy": {
    "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy",
    "highWaterMarkColumnName": "metadata_storage_last_modified"
  },
  "dataDeletionDetectionPolicy": {
    "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy",
    "softDeleteColumnName": "isDeleted",
    "softDeleteMarkerValue": "true"
  }
}

정의

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

데이터 원본에 대한 연결 문자열입니다. Azure SQL, Azure Blob, ADLS Gen 2 및 Azure Table의 경우 관리 ID를 사용하는 경우 연결 문자열 또는 리소스 ID가 됩니다. CosmosDB의 경우 관리 ID에 대한 ApiKind 또는 리소스 ID를 지정하는 형식이 지정된 연결 문자열입니다. Onelake 파일의 경우 연결 문자열은 작업 영역 guid 또는 작업 영역 FQDN입니다. Onelake는 관리 ID 연결만 지원합니다. 연결 문자열을 업데이트하지 않으려면 (대괄호 포함)으로 <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 데이터 원본의 경우), 컨테이너(Azure Blob 및 ADLS Gen 2 데이터 원본의 경우), Azure 테이블(Azure 테이블 데이터 원본의 경우) 또는 레이크하우스(Onelake 데이터 원본의 경우)의 이름입니다.

query

string

이 데이터 컨테이너에 적용되는 쿼리입니다. CosmosDB의 경우 데이터 원본 쿼리는 데이터를 평면화하고 필터링할 수 있습니다. Azure Blob 및 ADLS Gen 2 쿼리의 경우 폴더별로 필터링할 수 있습니다. Azure 테이블의 경우 쿼리는 행 데이터별로 필터링할 수 있습니다. Onelake의 경우 쿼리는 폴더 또는 바로 가기별로 필터링할 수 있습니다. 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

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

Description
azuresql

자격 증명이 표준 SQL 연결 문자열 또는 SQL 리소스의 ResourceId일 수 있는 Azure SQL 데이터 원본의 정의입니다. 컨테이너 속성은 인덱싱할 테이블 또는 뷰를 참조합니다. 쿼리 매개 변수는 이 데이터 원본에 대해 지원되지 않습니다.

cosmosdb

자격 증명이 키 기반 연결의 경우 AccountEndpoint, AccountKey 및 Database에 대한 세부 정보를 포함하는 서식이 지정된 연결 문자열이거나 키 없는 연결의 경우 ResourceID 및 ApiKind에 대한 세부 정보가 포함될 수 있는 CosmosDB 데이터 원본의 정의입니다. 컨테이너 속성은 인덱싱할 cosmosdb 컬렉션을 참조하고 선택적 쿼리 속성은 컬렉션에 대한 SQL 쿼리를 참조합니다.

azureblob

자격 증명이 스토리지 연결 문자열 또는 스토리지 계정의 ResourceId일 수 있는 Azure Blob 데이터 원본의 정의입니다. 컨테이너 속성은 인덱싱할 Blob 컨테이너를 참조하고 선택적 쿼리 속성은 컨테이너의 특정 하위 폴더를 참조합니다.

azuretable

자격 증명이 테이블 연결 문자열 또는 스토리지 계정의 ResourceId일 수 있는 Azure 테이블 데이터 원본의 정의입니다. 컨테이너 속성은 인덱싱할 Blob 컨테이너를 참조하며 선택적 쿼리 속성을 사용하여 행을 필터링할 수 있습니다.

mysql

자격 증명이 표준 ADO.NET 형식의 SQL 연결 문자열 또는 SQL 리소스의 ResourceId일 수 있는 Azure SQL 데이터 원본의 정의입니다. 컨테이너 속성은 인덱싱할 테이블 또는 뷰를 참조합니다. 쿼리 매개 변수는 이 데이터 원본에 대해 지원되지 않습니다.

adlsgen2

자격 증명이 스토리지 연결 문자열 또는 스토리지 계정의 ResourceId일 수 있는 Azure ADLS Gen 2 데이터 원본의 정의입니다. 컨테이너 속성은 인덱싱할 Blob 컨테이너를 참조하고 선택적 쿼리 속성은 컨테이너의 특정 하위 폴더를 참조합니다.

onelake

자격 증명이 Fabric 작업 영역 GUID 또는 작업 영역 FQDN일 수 있는 Microsoft Fabric Onelake 데이터 원본의 정의입니다. 컨테이너 속성은 레이크하우스 GUID를 참조하고 선택적 쿼리 속성은 레이크하우스의 폴더 또는 바로 가기를 참조합니다.

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

미사용 데이터를 암호화하는 데 사용할 키를 포함하는 Azure Key Vault의 URI(DNS 이름이라고도 함)입니다. 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 조각입니다.