Data Sources - Create Or Update
Создает новый источник данных или обновляет источник данных, если он уже существует.
PUT {endpoint}/datasources('{dataSourceName}')?api-version=2024-07-01
Параметры URI
Имя | В | Обязательно | Тип | Описание |
---|---|---|---|---|
data
|
path | True |
string |
Имя источника данных для создания или обновления. |
endpoint
|
path | True |
string |
URL-адрес конечной точки службы поиска. |
api-version
|
query | True |
string |
Версия клиентского API. |
Заголовок запроса
Имя | Обязательно | Тип | Описание |
---|---|---|---|
x-ms-client-request-id |
string uuid |
Идентификатор отслеживания, отправляемый запросом на отладку. |
|
If-Match |
string |
Определяет условие If-Match. Операция будет выполнена только в том случае, если ETag на сервере соответствует этому значению. |
|
If-None-Match |
string |
Определяет условие If-None-Match. Операция будет выполнена только в том случае, если ETag на сервере не соответствует этому значению. |
|
Prefer | True |
string |
Для HTTP-запросов PUT служба возвращает созданный или обновленный ресурс успешно. |
Текст запроса
Имя | Обязательно | Тип | Описание |
---|---|---|---|
container | True |
Контейнер данных для источника данных. |
|
credentials | True |
Учетные данные для источника данных. |
|
name | True |
string |
Имя источника данных. |
type | True |
Тип источника данных. |
|
@odata.etag |
string |
ETag источника данных. |
|
dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
Политика обнаружения изменений данных для источника данных. |
|
dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
Политика обнаружения удаления данных для источника данных. |
|
description |
string |
Описание источника данных. |
|
encryptionKey |
Описание ключа шифрования, созданного в Azure Key Vault. Этот ключ используется для предоставления дополнительного уровня шифрования неактивных данных для определения источника данных, если требуется полная уверенность в том, что никто, даже не Корпорация Майкрософт, не может расшифровать определение источника данных. После шифрования определения источника данных он всегда будет оставаться зашифрованным. Служба поиска игнорирует попытки задать для этого свойства значение NULL. Это свойство можно изменить по мере необходимости, если вы хотите повернуть ключ шифрования; Определение источника данных не будет затронуто. Шифрование с помощью ключей, управляемых клиентом, недоступно для бесплатных служб поиска и доступно только для платных служб, созданных 1 января 2019 г. |
Ответы
Имя | Тип | Описание |
---|---|---|
200 OK | ||
201 Created | ||
Other Status Codes |
Ответ на ошибку. |
Примеры
SearchServiceCreateOrUpdateDataSource
Образец запроса
PUT https://myservice.search.windows.net/datasources('mydatasource')?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": null
}
}
Пример ответа
{
"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": null
}
}
{
"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": null
}
}
Определения
Имя | Описание |
---|---|
Azure |
Учетные данные зарегистрированного приложения, созданного для службы поиска, используемого для проверки подлинности доступа к ключам шифрования, хранящимся в Azure Key Vault. |
Data |
Представляет учетные данные, которые можно использовать для подключения к источнику данных. |
Error |
Дополнительные сведения об ошибке управления ресурсами. |
Error |
Сведения об ошибке. |
Error |
Ответ на ошибку |
High |
Определяет политику обнаружения изменений данных, которая фиксирует изменения в зависимости от значения столбца высокой водяной отметки. |
Search |
Представляет сведения о сущности (например, таблице SQL Azure или коллекции CosmosDB), которая будет индексирована. |
Search |
Представляет определение источника данных, которое можно использовать для настройки индексатора. |
Search |
Определяет тип источника данных. |
Search |
Ключ шифрования, управляемый клиентом, в Azure Key Vault. Ключи, которые создаются и управляются, можно использовать для шифрования или расшифровки неактивных данных, таких как индексы и карты синонимов. |
Soft |
Определяет политику обнаружения удаления данных, реализующую стратегию обратимого удаления. Он определяет, следует ли удалять элемент на основе значения указанного столбца обратимого удаления. |
Sql |
Определяет политику обнаружения изменений данных, которая фиксирует изменения с помощью функции встроенного отслеживания изменений базы данных SQL Azure. |
AzureActiveDirectoryApplicationCredentials
Учетные данные зарегистрированного приложения, созданного для службы поиска, используемого для проверки подлинности доступа к ключам шифрования, хранящимся в Azure Key Vault.
Имя | Тип | Описание |
---|---|---|
applicationId |
string |
Идентификатор приложения AAD, которому было предоставлено необходимые разрешения на доступ к Azure Key Vault, который будет использоваться при шифровании неактивных данных. Идентификатор приложения не следует путать с идентификатором объекта для приложения AAD. |
applicationSecret |
string |
Ключ проверки подлинности указанного приложения AAD. |
DataSourceCredentials
Представляет учетные данные, которые можно использовать для подключения к источнику данных.
Имя | Тип | Описание |
---|---|---|
connectionString |
string |
Строка подключения для источника данных. Установите значение |
ErrorAdditionalInfo
Дополнительные сведения об ошибке управления ресурсами.
Имя | Тип | Описание |
---|---|---|
info |
object |
Дополнительные сведения. |
type |
string |
Дополнительный тип сведений. |
ErrorDetail
Сведения об ошибке.
Имя | Тип | Описание |
---|---|---|
additionalInfo |
Дополнительные сведения об ошибке. |
|
code |
string |
Код ошибки. |
details |
Сведения об ошибке. |
|
message |
string |
Сообщение об ошибке. |
target |
string |
Целевой объект ошибки. |
ErrorResponse
Ответ на ошибку
Имя | Тип | Описание |
---|---|---|
error |
Объект ошибки. |
HighWaterMarkChangeDetectionPolicy
Определяет политику обнаружения изменений данных, которая фиксирует изменения в зависимости от значения столбца высокой водяной отметки.
Имя | Тип | Описание |
---|---|---|
@odata.type |
string:
#Microsoft. |
Фрагмент URI, указывающий тип политики обнаружения изменений данных. |
highWaterMarkColumnName |
string |
Имя столбца с высокой водой. |
SearchIndexerDataContainer
Представляет сведения о сущности (например, таблице SQL Azure или коллекции CosmosDB), которая будет индексирована.
Имя | Тип | Описание |
---|---|---|
name |
string |
Имя таблицы или представления (для источника данных SQL Azure) или коллекции (для источника данных CosmosDB), который будет индексирован. |
query |
string |
Запрос, применяемый к этому контейнеру данных. Синтаксис и значение этого параметра относятся к источнику данных. Не поддерживается источниками данных SQL Azure. |
SearchIndexerDataSource
Представляет определение источника данных, которое можно использовать для настройки индексатора.
Имя | Тип | Описание |
---|---|---|
@odata.etag |
string |
ETag источника данных. |
container |
Контейнер данных для источника данных. |
|
credentials |
Учетные данные для источника данных. |
|
dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
Политика обнаружения изменений данных для источника данных. |
dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
Политика обнаружения удаления данных для источника данных. |
description |
string |
Описание источника данных. |
encryptionKey |
Описание ключа шифрования, созданного в Azure Key Vault. Этот ключ используется для предоставления дополнительного уровня шифрования неактивных данных для определения источника данных, если требуется полная уверенность в том, что никто, даже не Корпорация Майкрософт, не может расшифровать определение источника данных. После шифрования определения источника данных он всегда будет оставаться зашифрованным. Служба поиска игнорирует попытки задать для этого свойства значение NULL. Это свойство можно изменить по мере необходимости, если вы хотите повернуть ключ шифрования; Определение источника данных не будет затронуто. Шифрование с помощью ключей, управляемых клиентом, недоступно для бесплатных служб поиска и доступно только для платных служб, созданных 1 января 2019 г. |
|
name |
string |
Имя источника данных. |
type |
Тип источника данных. |
SearchIndexerDataSourceType
Определяет тип источника данных.
Имя | Тип | Описание |
---|---|---|
adlsgen2 |
string |
Указывает источник данных ADLS 2-го поколения. |
azureblob |
string |
Указывает источник данных BLOB-объектов Azure. |
azuresql |
string |
Указывает источник данных SQL Azure. |
azuretable |
string |
Указывает источник данных таблицы Azure. |
cosmosdb |
string |
Указывает источник данных CosmosDB. |
mysql |
string |
Указывает источник данных MySql. |
SearchResourceEncryptionKey
Ключ шифрования, управляемый клиентом, в Azure Key Vault. Ключи, которые создаются и управляются, можно использовать для шифрования или расшифровки неактивных данных, таких как индексы и карты синонимов.
Имя | Тип | Описание |
---|---|---|
accessCredentials |
Необязательные учетные данные Azure Active Directory, используемые для доступа к Azure Key Vault. Не требуется, если вместо этого используется управляемое удостоверение. |
|
keyVaultKeyName |
string |
Имя ключа Azure Key Vault, используемого для шифрования неактивных данных. |
keyVaultKeyVersion |
string |
Версия ключа Azure Key Vault, используемая для шифрования неактивных данных. |
keyVaultUri |
string |
Универсальный код ресурса (URI) Хранилища ключей Azure, который также называется DNS-именем, который содержит ключ, используемый для шифрования неактивных данных. Пример URI может быть |
SoftDeleteColumnDeletionDetectionPolicy
Определяет политику обнаружения удаления данных, реализующую стратегию обратимого удаления. Он определяет, следует ли удалять элемент на основе значения указанного столбца обратимого удаления.
Имя | Тип | Описание |
---|---|---|
@odata.type |
string:
#Microsoft. |
Фрагмент URI, указывающий тип политики обнаружения удаления данных. |
softDeleteColumnName |
string |
Имя столбца, используемого для обнаружения обратимого удаления. |
softDeleteMarkerValue |
string |
Значение маркера, определяющее элемент как удаленный. |
SqlIntegratedChangeTrackingPolicy
Определяет политику обнаружения изменений данных, которая фиксирует изменения с помощью функции встроенного отслеживания изменений базы данных SQL Azure.
Имя | Тип | Описание |
---|---|---|
@odata.type |
string:
#Microsoft. |
Фрагмент URI, указывающий тип политики обнаружения изменений данных. |