Indexers - Create Or Update
Создает новый индексатор или обновляет индексатор, если он уже существует.
PUT {endpoint}/indexers('{indexerName}')?api-version=2024-05-01-preview
PUT {endpoint}/indexers('{indexerName}')?api-version=2024-05-01-preview&ignoreResetRequirements={ignoreResetRequirements}&disableCacheReprocessingChangeDetection={disableCacheReprocessingChangeDetection}
Параметры URI
Имя | В | Обязательно | Тип | Описание |
---|---|---|---|---|
endpoint
|
path | True |
string |
URL-адрес конечной точки службы поиска. |
indexer
|
path | True |
string |
Имя создаваемого или обновляемого индексатора. |
api-version
|
query | True |
string |
Версия API клиента. |
disable
|
query |
boolean |
Отключает обнаружение изменений повторной обработки кэша. |
|
ignore
|
query |
boolean |
Игнорирует требования к сбросу кэша. |
Заголовок запроса
Имя | Обязательно | Тип | Описание |
---|---|---|---|
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 указывает службе вернуть созданный или обновленный ресурс при успешном выполнении. |
Текст запроса
Имя | Обязательно | Тип | Описание |
---|---|---|---|
dataSourceName | True |
string |
Имя источника данных, из которого индексатор считывает данные. |
name | True |
string |
Имя индексатора. |
targetIndexName | True |
string |
Имя индекса, в который индексатор записывает данные. |
@odata.etag |
string |
ETag индексатора. |
|
cache |
Добавляет кэширование в конвейер обогащения, чтобы обеспечить выполнение шагов добавочного изменения без необходимости перестраивать индекс каждый раз. |
||
description |
string |
Описание индексатора. |
|
disabled |
boolean |
Значение , указывающее, отключен ли индексатор. Значение по умолчанию — false. |
|
encryptionKey |
Описание ключа шифрования, созданного в Azure Key Vault. Этот ключ используется для предоставления дополнительного уровня шифрования неактивных данных для определения индексатора (а также состояния выполнения индексатора), если требуется полная гарантия того, что никто, даже корпорация Майкрософт, не может расшифровать их. После шифрования определения индексатора оно всегда будет оставаться зашифрованным. Служба поиска игнорирует попытки присвоить этому свойству значение NULL. Это свойство можно изменить при необходимости, если требуется сменить ключ шифрования. Определение индексатора (и состояние выполнения индексатора) не будут затронуты. Шифрование с помощью ключей, управляемых клиентом, недоступно для бесплатных служб поиска и доступно только для платных служб, созданных 1 января 2019 года или позже. |
||
fieldMappings |
Определяет сопоставления между полями в источнике данных и соответствующими целевыми полями в индексе. |
||
outputFieldMappings |
Сопоставления полей вывода применяются после обогащения и непосредственно перед индексированием. |
||
parameters |
Параметры для выполнения индексатора. |
||
schedule |
Расписание для этого индексатора. |
||
skillsetName |
string |
Имя набора навыков, выполняемого с помощью этого индексатора. |
Ответы
Имя | Тип | Описание |
---|---|---|
200 OK | ||
201 Created | ||
Other Status Codes |
Ответ об ошибке. |
Примеры
SearchServiceCreateOrUpdateIndexer
Образец запроса
PUT https://myservice.search.windows.net/indexers('myindexer')?api-version=2024-05-01-preview
{
"name": "myindexer",
"description": "a cool indexer",
"dataSourceName": "mydatasource",
"targetIndexName": "orders",
"schedule": {
"interval": "PT1H",
"startTime": "2015-01-01T00:00:00Z"
},
"parameters": {
"maxFailedItems": 10,
"maxFailedItemsPerBatch": 5
},
"encryptionKey": {
"keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
"keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
"keyVaultUri": "https://myKeyVault.vault.azure.net",
"accessCredentials": null
}
}
Пример ответа
{
"name": "myindexer",
"description": "a cool indexer",
"dataSourceName": "mydatasource",
"targetIndexName": "orders",
"schedule": {
"interval": "PT1H",
"startTime": "2015-01-01T00:00:00Z"
},
"parameters": {
"maxFailedItems": 10,
"maxFailedItemsPerBatch": 5
},
"fieldMappings": [],
"disabled": false,
"encryptionKey": {
"keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
"keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
"keyVaultUri": "https://myKeyVault.vault.azure.net",
"accessCredentials": null
}
}
{
"name": "myindexer",
"description": "a cool indexer",
"dataSourceName": "mydatasource",
"targetIndexName": "orders",
"schedule": {
"interval": "PT1H",
"startTime": "2015-01-01T00:00:00Z"
},
"parameters": {
"maxFailedItems": 10,
"maxFailedItemsPerBatch": 5
},
"fieldMappings": [],
"disabled": false,
"encryptionKey": {
"keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
"keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
"keyVaultUri": "https://myKeyVault.vault.azure.net",
"accessCredentials": null
}
}
Определения
Имя | Описание |
---|---|
Azure |
Учетные данные зарегистрированного приложения, созданного для службы поиска, которые используются для доступа к ключам шифрования, хранящимся в Azure Key Vault с проверкой подлинности. |
Blob |
Указывает данные, извлекаемые из хранилища BLOB-объектов Azure, и сообщает индексатору, какие данные следует извлечь из содержимого изображения, если для параметра imageAction задано значение, отличное от "none". Это относится к содержимому внедренного изображения в .PDF или другом приложении, а также к файлам изображений, таким как .jpg и .png, в больших двоичных объектах Azure. |
Blob |
Определяет способ обработки внедренных образов и файлов изображений в хранилище BLOB-объектов Azure. Для настройки конфигурации imageAction любого значения, отличного от "none", необходимо, чтобы набор навыков также был присоединен к индексатору. |
Blob |
Представляет режим синтаксического анализа для индексирования из источника данных BLOB-объектов Azure. |
Blob |
Определяет алгоритм извлечения текста из PDF-файлов в хранилище BLOB-объектов Azure. |
Error |
Дополнительные сведения об ошибке управления ресурсами. |
Error |
Сведения об ошибке. |
Error |
Сообщение об ошибке |
Field |
Определяет сопоставление между полем в источнике данных и целевым полем в индексе. |
Field |
Представляет функцию, которая преобразует значение из источника данных перед индексированием. |
Indexer |
Указывает среду, в которой должен выполняться индексатор. |
Indexing |
Представляет параметры для выполнения индексатора. |
Indexing |
Словарь свойств конфигурации, относящихся к индексатору. Каждое имя является именем определенного свойства. Каждое значение должно иметь примитивный тип. |
Indexing |
Представляет расписание для выполнения индексатора. |
Search |
Представляет индексатор. |
Search |
|
Search |
Очищает свойство identity источника данных. |
Search |
Указывает удостоверение для используемого источника данных. |
Search |
Управляемый клиентом ключ шифрования в Azure Key Vault. Ключи, которые вы создаете и которыми управляете, можно использовать для шифрования или расшифровки неактивных данных, таких как индексы и карты синонимов. |
AzureActiveDirectoryApplicationCredentials
Учетные данные зарегистрированного приложения, созданного для службы поиска, которые используются для доступа к ключам шифрования, хранящимся в Azure Key Vault с проверкой подлинности.
Имя | Тип | Описание |
---|---|---|
applicationId |
string |
Идентификатор приложения AAD, которому предоставлены необходимые разрешения на доступ к Key Vault Azure, который будет использоваться при шифровании неактивных данных. Идентификатор приложения не следует путать с идентификатором объекта для приложения AAD. |
applicationSecret |
string |
Ключ проверки подлинности указанного приложения AAD. |
BlobIndexerDataToExtract
Указывает данные, извлекаемые из хранилища BLOB-объектов Azure, и сообщает индексатору, какие данные следует извлечь из содержимого изображения, если для параметра imageAction задано значение, отличное от "none". Это относится к содержимому внедренного изображения в .PDF или другом приложении, а также к файлам изображений, таким как .jpg и .png, в больших двоичных объектах Azure.
Имя | Тип | Описание |
---|---|---|
allMetadata |
string |
Извлекает метаданные, предоставляемые подсистемой хранилища BLOB-объектов Azure, и метаданные конкретного типа контента (например, метаданные, уникальные только для .png файлов индексируются). |
contentAndMetadata |
string |
Извлекает все метаданные и текстовое содержимое из каждого большого двоичного объекта. |
storageMetadata |
string |
Индексирует только стандартные свойства большого двоичного объекта и метаданные, заданные пользователем. |
BlobIndexerImageAction
Определяет способ обработки внедренных образов и файлов изображений в хранилище BLOB-объектов Azure. Для настройки конфигурации imageAction любого значения, отличного от "none", необходимо, чтобы набор навыков также был присоединен к индексатору.
Имя | Тип | Описание |
---|---|---|
generateNormalizedImagePerPage |
string |
Извлекает текст из изображений (например, слово "STOP" из знака остановки трафика) и внедряет его в поле содержимого, но обрабатывает PDF-файлы по-разному, так как каждая страница будет отображаться как изображение и нормализуется соответствующим образом, вместо извлечения внедренных изображений. Типы файлов, отличные от PDF, будут обрабатываться так же, как если бы был задан параметр generateNormalizedImages. |
generateNormalizedImages |
string |
Извлекает текст из изображений (например, слово "STOP" из знака остановки трафика) и внедряет его в поле содержимого. Для этого действия требуется, чтобы для параметра dataToExtract было задано значение contentAndMetadata. Нормализованное изображение относится к дополнительной обработке, в результате чего в результатах визуального поиска выводятся однородные выходные данные изображения, размер и смена изображения для обеспечения согласованной отрисовки. Эта функция формируют такие сведения по каждому изображению. |
none |
string |
Игнорирует внедренные изображения или файлы изображений в наборе данных. Это значение по умолчанию. |
BlobIndexerParsingMode
Представляет режим синтаксического анализа для индексирования из источника данных BLOB-объектов Azure.
Имя | Тип | Описание |
---|---|---|
default |
string |
Установите значение по умолчанию для обычной обработки файлов. |
delimitedText |
string |
Задайте значение delimitedText, если большие двоичные объекты являются обычными CSV-файлами. |
json |
string |
Присвойте значение json, чтобы извлечь структурированное содержимое из JSON-файлов. |
jsonArray |
string |
Задайте значение jsonArray, чтобы извлечь отдельные элементы массива JSON в виде отдельных документов. |
jsonLines |
string |
Задайте значение jsonLines, чтобы извлечь отдельные сущности JSON, разделенные новой строкой, в виде отдельных документов. |
text |
string |
Задайте для параметра значение text, чтобы повысить производительность индексирования файлов в виде обычного текста в хранилище BLOB-объектов. |
BlobIndexerPDFTextRotationAlgorithm
Определяет алгоритм извлечения текста из PDF-файлов в хранилище BLOB-объектов Azure.
Имя | Тип | Описание |
---|---|---|
detectAngles |
string |
Может обеспечить лучшее и более удобочитаемое извлечение текста из PDF-файлов, в которых есть повернутый текст. Обратите внимание, что при использовании этого параметра может быть небольшое влияние на скорость производительности. Этот параметр применяется только к PDF-файлам и только к PDF-файлам со встроенным текстом. Если повернутый текст отображается во встроенном изображении в ФОРМАТЕ PDF, этот параметр не применяется. |
none |
string |
Использует обычное извлечение текста. Это значение по умолчанию. |
ErrorAdditionalInfo
Дополнительные сведения об ошибке управления ресурсами.
Имя | Тип | Описание |
---|---|---|
info |
object |
Дополнительные сведения. |
type |
string |
Тип дополнительных сведений. |
ErrorDetail
Сведения об ошибке.
Имя | Тип | Описание |
---|---|---|
additionalInfo |
Дополнительные сведения об ошибке. |
|
code |
string |
Код ошибки. |
details |
Сведения об ошибке. |
|
message |
string |
Сообщение об ошибке. |
target |
string |
Целевой объект ошибки. |
ErrorResponse
Сообщение об ошибке
Имя | Тип | Описание |
---|---|---|
error |
Объект ошибки. |
FieldMapping
Определяет сопоставление между полем в источнике данных и целевым полем в индексе.
Имя | Тип | Описание |
---|---|---|
mappingFunction |
Функция, применяемая к каждому значению исходного поля перед индексированием. |
|
sourceFieldName |
string |
Имя поля в источнике данных. |
targetFieldName |
string |
Имя целевого поля в индексе. То же, что и имя исходного поля по умолчанию. |
FieldMappingFunction
Представляет функцию, которая преобразует значение из источника данных перед индексированием.
Имя | Тип | Описание |
---|---|---|
name |
string |
Имя функции сопоставления полей. |
parameters |
object |
Словарь пар "имя-значение параметра" для передачи в функцию. Каждое значение должно иметь примитивный тип. |
IndexerExecutionEnvironment
Указывает среду, в которой должен выполняться индексатор.
Имя | Тип | Описание |
---|---|---|
private |
string |
Указывает, что индексатор должен работать со средой, подготовленной специально для службы поиска. Его следует указывать в качестве среды выполнения, только если индексатору требуется безопасный доступ к ресурсам через общие ресурсы приватного канала. |
standard |
string |
Указывает, что служба поиска может определить, где должен выполняться индексатор. Это среда по умолчанию, если ничего не указано и является рекомендуемой. |
IndexingParameters
Представляет параметры для выполнения индексатора.
Имя | Тип | Default value | Описание |
---|---|---|---|
batchSize |
integer |
Количество элементов, которые считываются из источника данных и индексируются как один пакет для повышения производительности. Значение по умолчанию зависит от типа источника данных. |
|
configuration |
Словарь свойств конфигурации, относящихся к индексатору. Каждое имя является именем определенного свойства. Каждое значение должно иметь примитивный тип. |
||
maxFailedItems |
integer |
0 |
Максимальное число элементов, которые могут завершиться сбоем индексирования, чтобы выполнение индексатора по-прежнему считалось успешным. Значение –1 означает отсутствие ограничений. Значение по умолчанию — 0. |
maxFailedItemsPerBatch |
integer |
0 |
Максимальное число элементов в одном пакете, которые могут завершиться сбоем индексирования, чтобы пакет по-прежнему считался успешным. Значение –1 означает отсутствие ограничений. Значение по умолчанию — 0. |
IndexingParametersConfiguration
Словарь свойств конфигурации, относящихся к индексатору. Каждое имя является именем определенного свойства. Каждое значение должно иметь примитивный тип.
Имя | Тип | Default value | Описание |
---|---|---|---|
allowSkillsetToReadFileData |
boolean |
False |
Если задано значение true, будет создан путь //document//file_data, представляющий собой объект, представляющий исходные данные файла, скачанные из источника данных BLOB-объекта. Это позволяет передавать исходные данные файла пользовательскому навыку для обработки в конвейере обогащения или навыку извлечения документов. |
dataToExtract | contentAndMetadata |
Указывает данные, извлекаемые из хранилища BLOB-объектов Azure, и сообщает индексатору, какие данные следует извлечь из содержимого изображения, если для параметра imageAction задано значение, отличное от "none". Это относится к содержимому внедренного изображения в .PDF или другом приложении, а также к файлам изображений, таким как .jpg и .png, в больших двоичных объектах Azure. |
|
delimitedTextDelimiter |
string |
Для BLOB-объектов CSV задает односимвольный разделитель конца строки для CSV-файлов, где каждая строка начинает новый документ (например, "|"). |
|
delimitedTextHeaders |
string |
Для BLOB-объектов CSV задает список заголовков столбцов с разделителями-запятыми, что удобно для сопоставления исходных полей с целевыми полями в индексе. |
|
documentRoot |
string |
Для массивов JSON при использовании структурированного или частично структурированного документа можно указать путь к массиву с помощью этого свойства. |
|
excludedFileNameExtensions |
string |
Разделенный запятыми список расширений имен файлов, которые следует игнорировать при обработке из хранилища BLOB-объектов Azure. Например, можно исключить ".png, .mp4", чтобы пропустить эти файлы во время индексирования. |
|
executionEnvironment | standard |
Указывает среду, в которой должен выполняться индексатор. |
|
failOnUnprocessableDocument |
boolean |
False |
Для больших двоичных объектов Azure установите значение false, если вы хотите продолжить индексирование в случае сбоя индексирования документа. |
failOnUnsupportedContentType |
boolean |
False |
Для больших двоичных объектов Azure установите значение false, если вы хотите продолжить индексирование при обнаружении неподдерживаемого типа контента и не знаете все типы контента (расширения файлов) заранее. |
firstLineContainsHeaders |
boolean |
True |
Для BLOB-объектов CSV указывает, что первая (непустая) строка каждого большого двоичного объекта содержит заголовки. |
imageAction | none |
Определяет способ обработки внедренных образов и файлов изображений в хранилище BLOB-объектов Azure. Для настройки конфигурации imageAction любого значения, отличного от "none", необходимо, чтобы набор навыков также был присоединен к индексатору. |
|
indexStorageMetadataOnlyForOversizedDocuments |
boolean |
False |
Для больших двоичных объектов Azure задайте для этого свойства значение true, чтобы по-прежнему индексировать метаданные хранилища для содержимого BLOB-объектов, слишком большого для обработки. Большие двоичные объекты слишком большого размера по умолчанию считаются ошибками. Ограничения на размер большого двоичного объекта см. в разделе https://docs.microsoft.com/azure/search/search-limits-quotas-capacity. |
indexedFileNameExtensions |
string |
Разделенный запятыми список расширений имен файлов, которые нужно выбрать при обработке из хранилища BLOB-объектов Azure. Например, можно направить индексирование на файлы определенного приложения, указав расширения ".docx, .pptx, .msg", чтобы специально включить эти типы файлов. |
|
parsingMode | default |
Представляет режим синтаксического анализа для индексирования из источника данных BLOB-объектов Azure. |
|
pdfTextRotationAlgorithm | none |
Определяет алгоритм извлечения текста из PDF-файлов в хранилище BLOB-объектов Azure. |
|
queryTimeout |
string |
00:05:00 |
Увеличивает время ожидания сверх 5-минутного значения по умолчанию для Azure SQL источников данных базы данных, указанного в формате "чч:мм:сс". |
IndexingSchedule
Представляет расписание для выполнения индексатора.
Имя | Тип | Описание |
---|---|---|
interval |
string |
Интервал времени между выполнением индексатора. |
startTime |
string |
Время запуска индексатора. |
SearchIndexer
Представляет индексатор.
Имя | Тип | Default value | Описание |
---|---|---|---|
@odata.etag |
string |
ETag индексатора. |
|
cache |
Добавляет кэширование в конвейер обогащения, чтобы обеспечить выполнение шагов добавочного изменения без необходимости перестраивать индекс каждый раз. |
||
dataSourceName |
string |
Имя источника данных, из которого индексатор считывает данные. |
|
description |
string |
Описание индексатора. |
|
disabled |
boolean |
False |
Значение , указывающее, отключен ли индексатор. Значение по умолчанию — false. |
encryptionKey |
Описание ключа шифрования, созданного в Azure Key Vault. Этот ключ используется для предоставления дополнительного уровня шифрования неактивных данных для определения индексатора (а также состояния выполнения индексатора), если требуется полная гарантия того, что никто, даже корпорация Майкрософт, не может расшифровать их. После шифрования определения индексатора оно всегда будет оставаться зашифрованным. Служба поиска игнорирует попытки присвоить этому свойству значение NULL. Это свойство можно изменить при необходимости, если требуется сменить ключ шифрования. Определение индексатора (и состояние выполнения индексатора) не будут затронуты. Шифрование с помощью ключей, управляемых клиентом, недоступно для бесплатных служб поиска и доступно только для платных служб, созданных 1 января 2019 года или позже. |
||
fieldMappings |
Определяет сопоставления между полями в источнике данных и соответствующими целевыми полями в индексе. |
||
name |
string |
Имя индексатора. |
|
outputFieldMappings |
Сопоставления полей вывода применяются после обогащения и непосредственно перед индексированием. |
||
parameters |
Параметры для выполнения индексатора. |
||
schedule |
Расписание для этого индексатора. |
||
skillsetName |
string |
Имя набора навыков, выполняемого с помощью этого индексатора. |
|
targetIndexName |
string |
Имя индекса, в который индексатор записывает данные. |
SearchIndexerCache
Имя | Тип | Описание |
---|---|---|
enableReprocessing |
boolean |
Указывает, включена ли добавочная повторная обработка. |
identity | SearchIndexerDataIdentity: |
Назначаемое пользователем управляемое удостоверение, используемое для подключений к кэшу обогащения. Если строка подключения указывает удостоверение (ResourceId) и не указано, используется управляемое удостоверение, назначаемое системой. При обновлении индексатора значение остается неизменным, если удостоверение не указано. Если задано значение none, значение этого свойства очищается. |
storageConnectionString |
string |
Строка подключения учетной записи хранения, в которой будут храниться данные кэша. |
SearchIndexerDataNoneIdentity
Очищает свойство identity источника данных.
Имя | Тип | Описание |
---|---|---|
@odata.type |
string:
#Microsoft. |
Фрагмент URI, указывающий тип удостоверения. |
SearchIndexerDataUserAssignedIdentity
Указывает удостоверение для используемого источника данных.
Имя | Тип | Описание |
---|---|---|
@odata.type |
string:
#Microsoft. |
Фрагмент URI, указывающий тип удостоверения. |
userAssignedIdentity |
string |
Полный идентификатор ресурса Azure управляемого удостоверения, назначаемого пользователем, обычно в формате "/subscriptions/12345678-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId", который должен быть назначен службе поиска. |
SearchResourceEncryptionKey
Управляемый клиентом ключ шифрования в Azure Key Vault. Ключи, которые вы создаете и которыми управляете, можно использовать для шифрования или расшифровки неактивных данных, таких как индексы и карты синонимов.
Имя | Тип | Описание |
---|---|---|
accessCredentials |
Необязательные учетные данные Azure Active Directory, используемые для доступа к Key Vault Azure. Не требуется, если вместо этого используется управляемое удостоверение. |
|
identity | SearchIndexerDataIdentity: |
Явное управляемое удостоверение, используемое для этого ключа шифрования. Если не указано и свойство учетных данных доступа имеет значение NULL, используется управляемое удостоверение, назначаемое системой. При обновлении ресурса, если явное удостоверение не указано, оно остается неизменным. Если задано значение none, значение этого свойства очищается. |
keyVaultKeyName |
string |
Имя ключа Key Vault Azure, который будет использоваться для шифрования неактивных данных. |
keyVaultKeyVersion |
string |
Версия ключа Key Vault Azure, который будет использоваться для шифрования неактивных данных. |
keyVaultUri |
string |
Универсальный код ресурса (URI) Key Vault Azure, который также называется DNS-именем, который содержит ключ, используемый для шифрования неактивных данных. Пример URI: |