Indexers - Create

Создает новый индексатор.

POST {endpoint}/indexers?api-version=2023-11-01

Параметры URI

Имя В Обязательно Тип Описание
endpoint
path True

string

URL-адрес конечной точки службы поиска.

api-version
query True

string

Версия API клиента.

Заголовок запроса

Имя Обязательно Тип Описание
x-ms-client-request-id

string

uuid

Идентификатор отслеживания, отправленный с запросом для помощи в отладке.

Текст запроса

Имя Обязательно Тип Описание
dataSourceName True

string

Имя источника данных, из которого индексатор считывает данные.

name True

string

Имя индексатора.

targetIndexName True

string

Имя индекса, в который индексатор записывает данные.

@odata.etag

string

ETag индексатора.

description

string

Описание индексатора.

disabled

boolean

Значение , указывающее, отключен ли индексатор. Значение по умолчанию — false.

encryptionKey

SearchResourceEncryptionKey

Описание ключа шифрования, созданного в Azure Key Vault. Этот ключ используется для предоставления дополнительного уровня шифрования неактивных данных для определения индексатора (а также состояния выполнения индексатора), если требуется полная гарантия того, что никто, даже корпорация Майкрософт, не может расшифровать их. После шифрования определения индексатора оно всегда будет оставаться зашифрованным. Служба поиска игнорирует попытки присвоить этому свойству значение NULL. Это свойство можно изменить при необходимости, если требуется сменить ключ шифрования. Определение индексатора (и состояние выполнения индексатора) не будут затронуты. Шифрование с помощью ключей, управляемых клиентом, недоступно для бесплатных служб поиска и доступно только для платных служб, созданных 1 января 2019 года или позже.

fieldMappings

FieldMapping[]

Определяет сопоставления между полями в источнике данных и соответствующими целевыми полями в индексе.

outputFieldMappings

FieldMapping[]

Сопоставления полей вывода применяются после обогащения и непосредственно перед индексированием.

parameters

IndexingParameters

Параметры для выполнения индексатора.

schedule

IndexingSchedule

Расписание для этого индексатора.

skillsetName

string

Имя набора навыков, выполняемого с помощью этого индексатора.

Ответы

Имя Тип Описание
201 Created

SearchIndexer

Other Status Codes

SearchError

Ответ об ошибке.

Примеры

SearchServiceCreateIndexer

Sample Request

POST https://myservice.search.windows.net/indexers?api-version=2023-11-01

{
  "name": "myindexer",
  "description": "an 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": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  }
}

Sample Response

{
  "name": "myindexer",
  "description": "an 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": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": null
    }
  }
}

Определения

Имя Описание
AzureActiveDirectoryApplicationCredentials

Учетные данные зарегистрированного приложения, созданного для службы поиска, которые используются для доступа с проверкой подлинности к ключам шифрования, хранящимся в Azure Key Vault.

BlobIndexerDataToExtract

Указывает данные, извлекаемые из хранилища BLOB-объектов Azure, и сообщает индексатору, какие данные следует извлечь из содержимого изображения, если для параметра imageAction задано значение, отличное от "none". Это относится к содержимому внедренного изображения в .PDF или другом приложении, а также к файлам изображений, таким как .jpg и .png, в BLOB-объектах Azure.

BlobIndexerImageAction

Определяет способ обработки внедренных образов и файлов образов в хранилище BLOB-объектов Azure. При задании конфигурации imageAction любого значения, отличного от "none", необходимо, чтобы набор навыков также был присоединен к индексатору.

BlobIndexerParsingMode

Представляет режим синтаксического анализа для индексирования из источника данных BLOB-объекта Azure.

BlobIndexerPDFTextRotationAlgorithm

Определяет алгоритм извлечения текста из PDF-файлов в хранилище BLOB-объектов Azure.

FieldMapping

Определяет сопоставление между полем в источнике данных и целевым полем в индексе.

FieldMappingFunction

Представляет функцию, преобразующую значение из источника данных перед индексированием.

IndexerExecutionEnvironment

Указывает среду, в которой должен выполняться индексатор.

IndexingParameters

Представляет параметры для выполнения индексатора.

IndexingParametersConfiguration

Словарь свойств конфигурации, относящихся к индексатору. Каждое имя — это имя определенного свойства. Каждое значение должно иметь примитивный тип.

IndexingSchedule

Представляет расписание для выполнения индексатора.

SearchError

Описывает условие ошибки для API.

SearchIndexer

Представляет индексатор.

SearchResourceEncryptionKey

Ключ шифрования, управляемый клиентом, в 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, в BLOB-объектах 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

Использует обычное извлечение текста. Это значение по умолчанию.

FieldMapping

Определяет сопоставление между полем в источнике данных и целевым полем в индексе.

Имя Тип Описание
mappingFunction

FieldMappingFunction

Функция, применяемая к каждому значению исходного поля перед индексированием.

sourceFieldName

string

Имя поля в источнике данных.

targetFieldName

string

Имя целевого поля в индексе. По умолчанию совпадает с именем исходного поля.

FieldMappingFunction

Представляет функцию, преобразующую значение из источника данных перед индексированием.

Имя Тип Описание
name

string

Имя функции сопоставления полей.

parameters

object

Словарь пар "имя-значение" параметра для передачи функции. Каждое значение должно иметь примитивный тип.

IndexerExecutionEnvironment

Указывает среду, в которой должен выполняться индексатор.

Имя Тип Описание
private

string

Указывает, что индексатор должен работать со средой, подготовленной специально для службы поиска. Его следует указывать в качестве среды выполнения, только если индексатору требуется безопасный доступ к ресурсам через общие ресурсы приватного канала.

standard

string

Указывает, что служба поиска может определить, где должен выполняться индексатор. Это среда по умолчанию, если ничего не указано и является рекомендуемой.

IndexingParameters

Представляет параметры для выполнения индексатора.

Имя Тип Значение по умолчанию Описание
batchSize

integer

Количество элементов, которые считываются из источника данных и индексируются как один пакет для повышения производительности. Значение по умолчанию зависит от типа источника данных.

configuration

IndexingParametersConfiguration

Словарь свойств конфигурации, относящихся к индексатору. Каждое имя — это имя определенного свойства. Каждое значение должно иметь примитивный тип.

maxFailedItems

integer

0

Максимальное число элементов, индексирование которых может завершиться сбоем, чтобы выполнение индексатора по-прежнему считалось успешным. Значение –1 означает отсутствие ограничений. Значение по умолчанию — 0.

maxFailedItemsPerBatch

integer

0

Максимальное количество элементов в одном пакете, индексирование которых может завершиться ошибкой, чтобы пакет по-прежнему считался успешным. Значение –1 означает отсутствие ограничений. Значение по умолчанию — 0.

IndexingParametersConfiguration

Словарь свойств конфигурации, относящихся к индексатору. Каждое имя — это имя определенного свойства. Каждое значение должно иметь примитивный тип.

Имя Тип Значение по умолчанию Описание
allowSkillsetToReadFileData

boolean

False

Если значение равно true, будет создан путь //document//file_data, представляющий исходные данные файла, скачанные из источника данных BLOB-объекта. Это позволяет передать исходные данные файла в пользовательский навык для обработки в конвейере обогащения или в навык извлечения документов.

dataToExtract

BlobIndexerDataToExtract

contentAndMetadata

Указывает данные, извлекаемые из хранилища BLOB-объектов Azure, и сообщает индексатору, какие данные следует извлечь из содержимого изображения, если для параметра imageAction задано значение, отличное от "none". Это относится к содержимому внедренного изображения в .PDF или другом приложении, а также к файлам изображений, таким как .jpg и .png, в BLOB-объектах Azure.

delimitedTextDelimiter

string

Для больших двоичных объектов CSV задает односимвольный разделитель конца строки для CSV-файлов, где каждая строка начинает новый документ (например, "|").

delimitedTextHeaders

string

Для BLOB-объектов CSV задает разделенный запятыми список заголовков столбцов, который удобно использовать для сопоставления исходных полей с полями назначения в индексе.

documentRoot

string

Для массивов JSON при использовании структурированного или частично структурированного документа можно указать путь к массиву с помощью этого свойства.

excludedFileNameExtensions

string

Разделенный запятыми список расширений имен файлов, которые следует игнорировать при обработке из хранилища BLOB-объектов Azure. Например, можно исключить ".png, .mp4", чтобы пропустить эти файлы во время индексирования.

executionEnvironment

IndexerExecutionEnvironment

standard

Указывает среду, в которой должен выполняться индексатор.

failOnUnprocessableDocument

boolean

False

Для больших двоичных объектов Azure задайте значение false, если вы хотите продолжить индексирование в случае сбоя индексирования документа.

failOnUnsupportedContentType

boolean

False

Для больших двоичных объектов Azure задайте значение false, если вы хотите продолжить индексирование при обнаружении неподдерживаемого типа контента и не знаете все типы контента (расширения файлов) заранее.

firstLineContainsHeaders

boolean

True

Для BLOB-объектов CSV указывает, что первая (непустая) строка каждого большого двоичного объекта содержит заголовки.

imageAction

BlobIndexerImageAction

none

Определяет способ обработки внедренных образов и файлов образов в хранилище BLOB-объектов Azure. При задании конфигурации imageAction любого значения, отличного от "none", необходимо, чтобы набор навыков также был присоединен к индексатору.

indexStorageMetadataOnlyForOversizedDocuments

boolean

False

Для больших двоичных объектов Azure присвойте этому свойству значение true, чтобы по-прежнему индексировать метаданные хранилища для содержимого BLOB-объектов, которое слишком велико для обработки. Большие двоичные объекты слишком большого размера по умолчанию считаются ошибками. Ограничения на размер BLOB-объекта см. в разделе https://docs.microsoft.com/azure/search/search-limits-quotas-capacity.

indexedFileNameExtensions

string

Разделенный запятыми список расширений имен файлов, которые нужно выбрать при обработке из хранилища BLOB-объектов Azure. Например, можно направить индексирование на файлы определенного приложения, указав расширения ".docx, .pptx, .msg", чтобы специально включить эти типы файлов.

parsingMode

BlobIndexerParsingMode

default

Представляет режим синтаксического анализа для индексирования из источника данных BLOB-объекта Azure.

pdfTextRotationAlgorithm

BlobIndexerPDFTextRotationAlgorithm

none

Определяет алгоритм извлечения текста из PDF-файлов в хранилище BLOB-объектов Azure.

queryTimeout

string

00:05:00

Увеличивает время ожидания после 5-минутного значения по умолчанию для Azure SQL источников данных базы данных, указанных в формате "чч:мм:сс".

IndexingSchedule

Представляет расписание для выполнения индексатора.

Имя Тип Описание
interval

string

Интервал времени между выполнением индексатора.

startTime

string

Время запуска индексатора.

SearchError

Описывает условие ошибки для API.

Имя Тип Описание
code

string

Один из определяемого сервером набора кодов ошибок.

details

SearchError[]

Массив сведений о конкретных ошибках, которые привели к этой сообщаемой ошибке.

message

string

Удобочитаемое представление ошибки.

SearchIndexer

Представляет индексатор.

Имя Тип Значение по умолчанию Описание
@odata.etag

string

ETag индексатора.

dataSourceName

string

Имя источника данных, из которого этот индексатор считывает данные.

description

string

Описание индексатора.

disabled

boolean

False

Значение , указывающее, отключен ли индексатор. Значение по умолчанию — false.

encryptionKey

SearchResourceEncryptionKey

Описание ключа шифрования, созданного в Azure Key Vault. Этот ключ используется для обеспечения дополнительного уровня шифрования неактивных данных для определения индексатора (а также состояния выполнения индексатора), если требуется полная уверенность в том, что никто, даже корпорация Майкрософт, не может расшифровать их. После шифрования определения индексатора оно всегда будет оставаться зашифрованным. Служба поиска игнорирует попытки присвоить этому свойству значение NULL. Это свойство можно изменить при необходимости, если вы хотите сменить ключ шифрования. Определение индексатора (и состояние выполнения индексатора) не будут затронуты. Шифрование с помощью ключей, управляемых клиентом, недоступно для бесплатных служб поиска и доступно только для платных служб, созданных 1 января 2019 года или позже.

fieldMappings

FieldMapping[]

Определяет сопоставления между полями в источнике данных и соответствующими целевыми полями в индексе.

name

string

Имя индексатора.

outputFieldMappings

FieldMapping[]

Сопоставления полей вывода применяются после обогащения и непосредственно перед индексированием.

parameters

IndexingParameters

Параметры для выполнения индексатора.

schedule

IndexingSchedule

Расписание для этого индексатора.

skillsetName

string

Имя набора навыков, выполняемого с помощью этого индексатора.

targetIndexName

string

Имя индекса, в который этот индексатор записывает данные.

SearchResourceEncryptionKey

Ключ шифрования, управляемый клиентом, в Azure Key Vault. Ключи, которые вы создаете и которыми управляете, можно использовать для шифрования и расшифровки неактивных данных в службе поиска, таких как индексы и сопоставления синонимов.

Имя Тип Описание
accessCredentials

AzureActiveDirectoryApplicationCredentials

Необязательные учетные данные Azure Active Directory, используемые для доступа к Key Vault Azure. Не требуется, если вместо этого используется управляемое удостоверение.

keyVaultKeyName

string

Имя ключа Key Vault Azure, который будет использоваться для шифрования неактивных данных.

keyVaultKeyVersion

string

Версия ключа Key Vault Azure, который будет использоваться для шифрования неактивных данных.

keyVaultUri

string

URI Key Vault Azure, также называемого DNS-именем, который содержит ключ, используемый для шифрования неактивных данных. Пример URI: https://my-keyvault-name.vault.azure.net.