Data Sources - Create
Создает новый источник данных.
POST {endpoint}/datasources?api-version=2023-11-01
Параметры URI
Имя | В | Обязательно | Тип | Описание |
---|---|---|---|---|
endpoint
|
path | True |
string |
URL-адрес конечной точки службы поиска. |
api-version
|
query | True |
string |
Версия API клиента. |
Заголовок запроса
Имя | Обязательно | Тип | Описание |
---|---|---|---|
x-ms-client-request-id |
string uuid |
Идентификатор отслеживания, отправленный с запросом на помощь в отладке. |
Текст запроса
Имя | Обязательно | Тип | Описание |
---|---|---|---|
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 года или позже. |
Ответы
Имя | Тип | Описание |
---|---|---|
201 Created | ||
Other Status Codes |
Ответ об ошибке. |
Примеры
SearchServiceCreateDataSource
Образец запроса
POST https://myservice.search.windows.net/datasources?api-version=2023-11-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
}
}
}
Определения
Имя | Описание |
---|---|
Azure |
Учетные данные зарегистрированного приложения, созданного для службы поиска, которые используются для доступа с проверкой подлинности к ключам шифрования, хранящимся в Azure Key Vault. |
Data |
Представляет учетные данные, которые можно использовать для подключения к источнику данных. |
High |
Определяет политику обнаружения изменений данных, которая фиксирует изменения на основе значения столбца высокой отметки воды. |
Search |
Описывает условие ошибки для API. |
Search |
Представляет сведения о сущности (например, Azure SQL таблице или коллекции CosmosDB), которая будет индексирована. |
Search |
Представляет определение источника данных, которое можно использовать для настройки индексатора. |
Search |
Определяет тип источника данных. |
Search |
Ключ шифрования, управляемый клиентом, в Azure Key Vault. Ключи, которые вы создаете и которыми управляете, можно использовать для шифрования и расшифровки неактивных данных в службе поиска, таких как индексы и сопоставления синонимов. |
Soft |
Определяет политику обнаружения удаления данных, реализующую стратегию обратимого удаления. Он определяет, следует ли удалять элемент на основе значения назначенного столбца обратимого удаления. |
Sql |
Определяет политику обнаружения изменений данных, которая фиксирует изменения с помощью функции интегрированного Отслеживание изменений базы данных Azure SQL. |
AzureActiveDirectoryApplicationCredentials
Учетные данные зарегистрированного приложения, созданного для службы поиска, которые используются для доступа с проверкой подлинности к ключам шифрования, хранящимся в Azure Key Vault.
Имя | Тип | Описание |
---|---|---|
applicationId |
string |
Идентификатор приложения AAD, которому были предоставлены необходимые разрешения на доступ к Key Vault Azure, который будет использоваться при шифровании неактивных данных. Идентификатор приложения не следует путать с идентификатором объекта для приложения AAD. |
applicationSecret |
string |
Ключ проверки подлинности указанного приложения AAD. |
DataSourceCredentials
Представляет учетные данные, которые можно использовать для подключения к источнику данных.
Имя | Тип | Описание |
---|---|---|
connectionString |
string |
Строка подключения для источника данных. Если вы не хотите обновлять строка подключения, задайте значение |
HighWaterMarkChangeDetectionPolicy
Определяет политику обнаружения изменений данных, которая фиксирует изменения на основе значения столбца высокой отметки воды.
Имя | Тип | Описание |
---|---|---|
@odata.type |
string:
#Microsoft. |
Фрагмент URI, указывающий тип политики обнаружения изменений данных. |
highWaterMarkColumnName |
string |
Имя столбца высокой отметки воды. |
SearchError
Описывает условие ошибки для API.
Имя | Тип | Описание |
---|---|---|
code |
string |
Один из определяемого сервером набора кодов ошибок. |
details |
Массив сведений о конкретных ошибках, которые привели к этой сообщаемой ошибке. |
|
message |
string |
Удобочитаемое представление ошибки. |
SearchIndexerDataContainer
Представляет сведения о сущности (например, Azure SQL таблице или коллекции CosmosDB), которая будет индексирована.
Имя | Тип | Описание |
---|---|---|
name |
string |
Имя таблицы или представления (для Azure SQL источника данных) или коллекции (для источника данных CosmosDB), которые будут индексированы. |
query |
string |
Запрос, применяемый к этому контейнеру данных. Синтаксис и значение этого параметра зависят от источника данных. Не поддерживается источниками данных Azure SQL. |
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, используемые для доступа к Key Vault Azure. Не требуется, если вместо этого используется управляемое удостоверение. |
|
keyVaultKeyName |
string |
Имя ключа Key Vault Azure, который будет использоваться для шифрования неактивных данных. |
keyVaultKeyVersion |
string |
Версия ключа Key Vault Azure, который будет использоваться для шифрования неактивных данных. |
keyVaultUri |
string |
URI Key Vault Azure, также называемого DNS-именем, который содержит ключ, используемый для шифрования неактивных данных. Пример URI: |
SoftDeleteColumnDeletionDetectionPolicy
Определяет политику обнаружения удаления данных, реализующую стратегию обратимого удаления. Он определяет, следует ли удалять элемент на основе значения назначенного столбца обратимого удаления.
Имя | Тип | Описание |
---|---|---|
@odata.type |
string:
#Microsoft. |
Фрагмент URI, указывающий тип политики обнаружения удаления данных. |
softDeleteColumnName |
string |
Имя столбца, используемого для обнаружения обратимого удаления. |
softDeleteMarkerValue |
string |
Значение маркера, определяющее удаленный элемент. |
SqlIntegratedChangeTrackingPolicy
Определяет политику обнаружения изменений данных, которая фиксирует изменения с помощью функции интегрированного Отслеживание изменений базы данных Azure SQL.
Имя | Тип | Описание |
---|---|---|
@odata.type |
string:
#Microsoft. |
Фрагмент URI, указывающий тип политики обнаружения изменений данных. |