Indexers - Create Or Update
Crea un indexador o actualiza un indexador si ya existe.
PUT {endpoint}/indexers('{indexerName}')?api-version=2024-05-01-preview
PUT {endpoint}/indexers('{indexerName}')?api-version=2024-05-01-preview&ignoreResetRequirements={ignoreResetRequirements}&disableCacheReprocessingChangeDetection={disableCacheReprocessingChangeDetection}
Parámetros de identificador URI
Nombre | En | Requerido | Tipo | Description |
---|---|---|---|---|
endpoint
|
path | True |
string |
Dirección URL del punto de conexión del servicio de búsqueda. |
indexer
|
path | True |
string |
Nombre del indexador que se va a crear o actualizar. |
api-version
|
query | True |
string |
Versión de api de cliente. |
disable
|
query |
boolean |
Deshabilita la detección de cambios de reprocesamiento de caché. |
|
ignore
|
query |
boolean |
Omite los requisitos de restablecimiento de caché. |
Encabezado de la solicitud
Nombre | Requerido | Tipo | Description |
---|---|---|---|
x-ms-client-request-id |
string uuid |
Identificador de seguimiento enviado con la solicitud para ayudar con la depuración. |
|
If-Match |
string |
Define la condición If-Match. La operación solo se realizará si el valor de ETag del servidor coincide con este valor. |
|
If-None-Match |
string |
Define la condición If-None-Match. La operación solo se realizará si la etiqueta ETag del servidor no coincide con este valor. |
|
Prefer | True |
string |
Para las solicitudes HTTP PUT, indica al servicio que devuelva el recurso creado o actualizado correctamente. |
Cuerpo de la solicitud
Nombre | Requerido | Tipo | Description |
---|---|---|---|
dataSourceName | True |
string |
Nombre del origen de datos del que este indexador lee los datos. |
name | True |
string |
El nombre del indizador. |
targetIndexName | True |
string |
Nombre del índice en el que este indexador escribe datos. |
@odata.etag |
string |
ETag del indexador. |
|
cache |
Agrega almacenamiento en caché a una canalización de enriquecimiento para permitir pasos de modificación incrementales sin tener que volver a generar el índice cada vez. |
||
description |
string |
Descripción del indexador. |
|
disabled |
boolean |
Valor que indica si el indexador está deshabilitado. El valor predeterminado es False. |
|
encryptionKey |
Descripción de una clave de cifrado que se crea en Azure Key Vault. Esta clave se usa para proporcionar un nivel adicional de cifrado en reposo para la definición del indizador (así como el estado de ejecución del indexador) cuando desea asegurarse de que nadie, ni siquiera Microsoft, puede descifrarlos. Una vez que haya cifrado la definición del indexador, siempre permanecerá cifrada. El servicio de búsqueda omitirá los intentos de establecer esta propiedad en null. Puede cambiar esta propiedad según sea necesario si desea rotar la clave de cifrado; La definición del indexador (y el estado de ejecución del indexador) no se verán afectadas. El cifrado con claves administradas por el cliente no está disponible para los servicios de búsqueda gratuitos y solo está disponible para los servicios de pago creados el 1 de enero de 2019 o después. |
||
fieldMappings |
Define las asignaciones entre los campos del origen de datos y los campos de destino correspondientes del índice. |
||
outputFieldMappings |
Las asignaciones de campos de salida se aplican después del enriquecimiento e inmediatamente antes de la indexación. |
||
parameters |
Parámetros para la ejecución del indexador. |
||
schedule |
La programación de este indexador. |
||
skillsetName |
string |
Nombre del conjunto de aptitudes que se ejecuta con este indexador. |
Respuestas
Nombre | Tipo | Description |
---|---|---|
200 OK | ||
201 Created | ||
Other Status Codes |
Respuesta de error. |
Ejemplos
SearchServiceCreateOrUpdateIndexer
Solicitud de ejemplo
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
}
}
Respuesta de muestra
{
"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
}
}
Definiciones
Nombre | Description |
---|---|
Azure |
Credenciales de una aplicación registrada creada para el servicio de búsqueda, que se usa para el acceso autenticado a las claves de cifrado almacenadas en Azure Key Vault. |
Blob |
Especifica los datos que se van a extraer de Azure Blob Storage e indica al indexador qué datos extraer del contenido de la imagen cuando "imageAction" está establecido en un valor distinto de "none". Esto se aplica al contenido de imagen incrustado en una .PDF u otra aplicación, o archivos de imagen, como .jpg y .png, en blobs de Azure. |
Blob |
Determina cómo procesar imágenes incrustadas y archivos de imagen en Azure Blob Storage. Establecer la configuración "imageAction" en cualquier valor distinto de "none" requiere que también se adjunte un conjunto de aptitudes a ese indexador. |
Blob |
Representa el modo de análisis para la indexación desde un origen de datos de blobs de Azure. |
Blob |
Determina el algoritmo para la extracción de texto de archivos PDF en Azure Blob Storage. |
Error |
Información adicional sobre el error de administración de recursos. |
Error |
Detalle del error. |
Error |
Respuesta de error |
Field |
Define una asignación entre un campo de un origen de datos y un campo de destino en un índice. |
Field |
Representa una función que transforma un valor de un origen de datos antes de la indexación. |
Indexer |
Especifica el entorno en el que se debe ejecutar el indexador. |
Indexing |
Representa los parámetros para la ejecución del indizador. |
Indexing |
Diccionario de propiedades de configuración específicas del indexador. Cada nombre es el nombre de una propiedad específica. Cada valor debe ser de un tipo primitivo. |
Indexing |
Representa una programación para la ejecución del indizador. |
Search |
Representa un indexador. |
Search |
|
Search |
Borra la propiedad de identidad de un origen de datos. |
Search |
Especifica la identidad de un origen de datos que se va a usar. |
Search |
Una clave de cifrado administrada por el cliente en Azure Key Vault. Las claves que cree y administre se pueden usar para cifrar o descifrar datos en reposo, como índices y mapas de sinónimos. |
AzureActiveDirectoryApplicationCredentials
Credenciales de una aplicación registrada creada para el servicio de búsqueda, que se usa para el acceso autenticado a las claves de cifrado almacenadas en Azure Key Vault.
Nombre | Tipo | Description |
---|---|---|
applicationId |
string |
Identificador de aplicación de AAD al que se concedieron los permisos de acceso necesarios a Azure Key Vault que se van a usar al cifrar los datos en reposo. El identificador de aplicación no debe confundirse con el id. de objeto de la aplicación de AAD. |
applicationSecret |
string |
Clave de autenticación de la aplicación de AAD especificada. |
BlobIndexerDataToExtract
Especifica los datos que se van a extraer de Azure Blob Storage e indica al indexador qué datos extraer del contenido de la imagen cuando "imageAction" está establecido en un valor distinto de "none". Esto se aplica al contenido de imagen incrustado en una .PDF u otra aplicación, o archivos de imagen, como .jpg y .png, en blobs de Azure.
Nombre | Tipo | Description |
---|---|---|
allMetadata |
string |
Extrae los metadatos proporcionados por el subsistema de Azure Blob Storage y los metadatos específicos del tipo de contenido (por ejemplo, los metadatos exclusivos de solo .png archivos se indexan). |
contentAndMetadata |
string |
Extrae todos los metadatos y el contenido textual de cada blob. |
storageMetadata |
string |
Indexa solo las propiedades de blob estándar y los metadatos especificados por el usuario. |
BlobIndexerImageAction
Determina cómo procesar imágenes incrustadas y archivos de imagen en Azure Blob Storage. Establecer la configuración "imageAction" en cualquier valor distinto de "none" requiere que también se adjunte un conjunto de aptitudes a ese indexador.
Nombre | Tipo | Description |
---|---|---|
generateNormalizedImagePerPage |
string |
Extrae texto de imágenes (por ejemplo, la palabra "STOP" de un signo de detención de tráfico) e lo inserta en el campo de contenido, pero trata los archivos PDF de forma diferente en que cada página se representará como una imagen y se normalizará en consecuencia, en lugar de extraer imágenes incrustadas. Los tipos de archivo que no son PDF se tratarán igual que si se hubiera establecido "generateNormalizedImages". |
generateNormalizedImages |
string |
Extrae texto de imágenes (por ejemplo, la palabra "STOP" de un signo de detención de tráfico) e la inserta en el campo de contenido. Esta acción requiere que "dataToExtract" esté establecido en "contentAndMetadata". Una imagen normalizada hace referencia al procesamiento adicional, lo que da como resultado una salida uniforme de imagen, el tamaño y la rotación para promover la representación coherente cuando se incluyen imágenes en los resultados de búsqueda visual. Esta información se genera para cada imagen cuando se usa esta opción. |
none |
string |
Omite las imágenes incrustadas o los archivos de imagen del conjunto de datos. Este es el valor predeterminado. |
BlobIndexerParsingMode
Representa el modo de análisis para la indexación desde un origen de datos de blobs de Azure.
Nombre | Tipo | Description |
---|---|---|
default |
string |
Establézcalo en predeterminado para el procesamiento de archivos normal. |
delimitedText |
string |
Se establece en delimitedText cuando los blobs son archivos CSV sin formato. |
json |
string |
Establézcalo en json para extraer contenido estructurado de archivos JSON. |
jsonArray |
string |
Establezca en jsonArray para extraer elementos individuales de una matriz JSON como documentos independientes. |
jsonLines |
string |
Establézcalo en jsonLines para extraer entidades JSON individuales, separadas por una nueva línea, como documentos independientes. |
text |
string |
Establézcalo en texto para mejorar el rendimiento de la indexación en archivos de texto sin formato en Blob Storage. |
BlobIndexerPDFTextRotationAlgorithm
Determina el algoritmo para la extracción de texto de archivos PDF en Azure Blob Storage.
Nombre | Tipo | Description |
---|---|---|
detectAngles |
string |
Puede producir una extracción de texto mejor y más legible de los archivos PDF que han girado texto dentro de ellos. Tenga en cuenta que puede haber un pequeño impacto en la velocidad de rendimiento cuando se usa este parámetro. Este parámetro solo se aplica a archivos PDF y solo a archivos PDF con texto incrustado. Si el texto girado aparece dentro de una imagen incrustada en el PDF, este parámetro no se aplica. |
none |
string |
Aprovecha la extracción de texto normal. Este es el valor predeterminado. |
ErrorAdditionalInfo
Información adicional sobre el error de administración de recursos.
Nombre | Tipo | Description |
---|---|---|
info |
object |
Información adicional. |
type |
string |
Tipo de información adicional. |
ErrorDetail
Detalle del error.
Nombre | Tipo | Description |
---|---|---|
additionalInfo |
Información adicional del error. |
|
code |
string |
Código de error. |
details |
Los detalles del error. |
|
message |
string |
El mensaje de error. |
target |
string |
Destino del error. |
ErrorResponse
Respuesta de error
Nombre | Tipo | Description |
---|---|---|
error |
Objeto de error. |
FieldMapping
Define una asignación entre un campo de un origen de datos y un campo de destino en un índice.
Nombre | Tipo | Description |
---|---|---|
mappingFunction |
Función que se va a aplicar a cada valor de campo de origen antes de la indexación. |
|
sourceFieldName |
string |
Nombre del campo en el origen de datos. |
targetFieldName |
string |
Nombre del campo de destino en el índice. Igual que el nombre del campo de origen de forma predeterminada. |
FieldMappingFunction
Representa una función que transforma un valor de un origen de datos antes de la indexación.
Nombre | Tipo | Description |
---|---|---|
name |
string |
Nombre de la función de asignación de campos. |
parameters |
object |
Diccionario de pares nombre-valor de parámetro que se van a pasar a la función. Cada valor debe ser de un tipo primitivo. |
IndexerExecutionEnvironment
Especifica el entorno en el que se debe ejecutar el indexador.
Nombre | Tipo | Description |
---|---|---|
private |
string |
Indica que el indexador debe ejecutarse con el entorno aprovisionado específicamente para el servicio de búsqueda. Esto solo se debe especificar como entorno de ejecución si el indexador necesita acceder a los recursos de forma segura a través de recursos de vínculo privado compartidos. |
standard |
string |
Indica que el servicio de búsqueda puede determinar dónde se debe ejecutar el indexador. Este es el entorno predeterminado cuando no se especifica nada y es el valor recomendado. |
IndexingParameters
Representa los parámetros para la ejecución del indizador.
Nombre | Tipo | Valor predeterminado | Description |
---|---|---|---|
batchSize |
integer |
Número de elementos leídos del origen de datos e indizado como un único lote para mejorar el rendimiento. El valor predeterminado depende del tipo de origen de datos. |
|
configuration |
Diccionario de propiedades de configuración específicas del indexador. Cada nombre es el nombre de una propiedad específica. Cada valor debe ser de un tipo primitivo. |
||
maxFailedItems |
integer |
0 |
El número máximo de elementos que pueden producir un error en la indexación de la ejecución del indexador se seguirá considerando correcto. -1 significa sin límite. El valor predeterminado es 0. |
maxFailedItemsPerBatch |
integer |
0 |
Número máximo de elementos de un único lote que puede producir un error en la indexación del lote para que se siga considerando correcto. -1 significa sin límite. El valor predeterminado es 0. |
IndexingParametersConfiguration
Diccionario de propiedades de configuración específicas del indexador. Cada nombre es el nombre de una propiedad específica. Cada valor debe ser de un tipo primitivo.
Nombre | Tipo | Valor predeterminado | Description |
---|---|---|---|
allowSkillsetToReadFileData |
boolean |
False |
Si es true, creará una ruta de acceso //document//file_data que es un objeto que representa los datos de archivo originales descargados del origen de datos de blob. Esto le permite pasar los datos de archivo originales a una aptitud personalizada para su procesamiento dentro de la canalización de enriquecimiento o a la aptitud Extracción de documentos. |
dataToExtract | contentAndMetadata |
Especifica los datos que se van a extraer de Azure Blob Storage e indica al indexador qué datos extraer del contenido de la imagen cuando "imageAction" está establecido en un valor distinto de "none". Esto se aplica al contenido de imagen insertado en una .PDF u otra aplicación, o archivos de imagen, como .jpg y .png, en blobs de Azure. |
|
delimitedTextDelimiter |
string |
En el caso de los blobs CSV, especifica el delimitador de un solo carácter de fin de línea para los archivos CSV donde cada línea inicia un nuevo documento (por ejemplo, "|"). |
|
delimitedTextHeaders |
string |
En el caso de los blobs CSV, especifica una lista delimitada por comas de encabezados de columna, útil para asignar campos de origen a campos de destino en un índice. |
|
documentRoot |
string |
En el caso de las matrices JSON, dado un documento estructurado o semiestructurado, puede especificar una ruta de acceso a la matriz mediante esta propiedad. |
|
excludedFileNameExtensions |
string |
Lista delimitada por comas de extensiones de nombre de archivo que se omitirán al procesar desde Azure Blob Storage. Por ejemplo, podría excluir ".png, .mp4" para omitir esos archivos durante la indexación. |
|
executionEnvironment | standard |
Especifica el entorno en el que se debe ejecutar el indexador. |
|
failOnUnprocessableDocument |
boolean |
False |
En el caso de los blobs de Azure, establezca en false si desea continuar indexando si se produce un error en la indexación de un documento. |
failOnUnsupportedContentType |
boolean |
False |
En el caso de los blobs de Azure, establezca en false si desea continuar indexando cuando se encuentra un tipo de contenido no admitido y no conoce todos los tipos de contenido (extensiones de archivo) de antemano. |
firstLineContainsHeaders |
boolean |
True |
En el caso de los blobs CSV, indica que la primera línea (no en blanco) de cada blob contiene encabezados. |
imageAction | none |
Determina cómo procesar imágenes incrustadas y archivos de imagen en Azure Blob Storage. Establecer la configuración "imageAction" en cualquier valor distinto de "none" requiere que también se adjunte un conjunto de aptitudes a ese indexador. |
|
indexStorageMetadataOnlyForOversizedDocuments |
boolean |
False |
En el caso de los blobs de Azure, establezca esta propiedad en true para indexar los metadatos de almacenamiento para el contenido de blobs demasiado grande para procesar. Los blobs demasiado grandes se tratan como errores de forma predeterminada. Para conocer los límites del tamaño del blob, consulte https://docs.microsoft.com/azure/search/search-limits-quotas-capacity. |
indexedFileNameExtensions |
string |
Lista delimitada por comas de extensiones de nombre de archivo que se van a seleccionar al procesar desde Azure Blob Storage. Por ejemplo, puede enfocar la indexación en archivos de aplicaciones específicos como ".docx, .pptx y .msg", para incluir específicamente esos tipos de archivo. |
|
parsingMode | default |
Representa el modo de análisis para la indexación desde un origen de datos de blobs de Azure. |
|
pdfTextRotationAlgorithm | none |
Determina el algoritmo para la extracción de texto de archivos PDF en Azure Blob Storage. |
|
queryTimeout |
string |
00:05:00 |
Aumenta el tiempo de espera más allá del valor predeterminado de 5 minutos para Azure SQL orígenes de datos de base de datos, especificados en el formato "hh:mm:ss". |
IndexingSchedule
Representa una programación para la ejecución del indizador.
Nombre | Tipo | Description |
---|---|---|
interval |
string |
Intervalo de tiempo entre las ejecuciones del indexador. |
startTime |
string |
Hora en la que un indexador debe empezar a ejecutarse. |
SearchIndexer
Representa un indexador.
Nombre | Tipo | Valor predeterminado | Description |
---|---|---|---|
@odata.etag |
string |
ETag del indexador. |
|
cache |
Agrega almacenamiento en caché a una canalización de enriquecimiento para permitir pasos de modificación incremental sin tener que volver a generar el índice cada vez. |
||
dataSourceName |
string |
Nombre del origen de datos del que este indexador lee los datos. |
|
description |
string |
Descripción del indexador. |
|
disabled |
boolean |
False |
Valor que indica si el indexador está deshabilitado. El valor predeterminado es False. |
encryptionKey |
Descripción de una clave de cifrado que se crea en Azure Key Vault. Esta clave se usa para proporcionar un nivel adicional de cifrado en reposo para la definición del indizador (así como el estado de ejecución del indexador) cuando quiere asegurarse de que nadie, ni microsoft, puede descifrarla. Una vez que haya cifrado la definición del indexador, siempre permanecerá cifrada. El servicio de búsqueda omitirá los intentos de establecer esta propiedad en null. Puede cambiar esta propiedad según sea necesario si desea rotar la clave de cifrado; La definición del indexador (y el estado de ejecución del indexador) no se verán afectadas. El cifrado con claves administradas por el cliente no está disponible para los servicios de búsqueda gratuitos y solo está disponible para los servicios de pago creados el 1 de enero de 2019 o después. |
||
fieldMappings |
Define las asignaciones entre los campos del origen de datos y los campos de destino correspondientes del índice. |
||
name |
string |
El nombre del indizador. |
|
outputFieldMappings |
Las asignaciones de campos de salida se aplican después del enriquecimiento e inmediatamente antes de la indexación. |
||
parameters |
Parámetros para la ejecución del indexador. |
||
schedule |
La programación de este indexador. |
||
skillsetName |
string |
Nombre del conjunto de aptitudes que se ejecuta con este indexador. |
|
targetIndexName |
string |
Nombre del índice en el que este indexador escribe datos. |
SearchIndexerCache
Nombre | Tipo | Description |
---|---|---|
enableReprocessing |
boolean |
Especifica si el reprocesamiento incremental está habilitado. |
identity | SearchIndexerDataIdentity: |
La identidad administrada asignada por el usuario que se usa para las conexiones a la caché de enriquecimiento. Si el cadena de conexión indica una identidad (ResourceId) y no se especifica, se usa la identidad administrada asignada por el sistema. En las actualizaciones del indexador, si no se especifica la identidad, el valor permanece sin cambios. Si se establece en "none", se borra el valor de esta propiedad. |
storageConnectionString |
string |
La cadena de conexión a la cuenta de almacenamiento donde se conservarán los datos de caché. |
SearchIndexerDataNoneIdentity
Borra la propiedad de identidad de un origen de datos.
Nombre | Tipo | Description |
---|---|---|
@odata.type |
string:
#Microsoft. |
Fragmento de URI que especifica el tipo de identidad. |
SearchIndexerDataUserAssignedIdentity
Especifica la identidad de un origen de datos que se va a usar.
Nombre | Tipo | Description |
---|---|---|
@odata.type |
string:
#Microsoft. |
Fragmento de URI que especifica el tipo de identidad. |
userAssignedIdentity |
string |
El identificador de recurso de Azure completo de una identidad administrada asignada por el usuario normalmente con el formato "/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" que se debe haber asignado al servicio de búsqueda. |
SearchResourceEncryptionKey
Una clave de cifrado administrada por el cliente en Azure Key Vault. Las claves que cree y administre se pueden usar para cifrar o descifrar datos en reposo, como índices y mapas de sinónimos.
Nombre | Tipo | Description |
---|---|---|
accessCredentials |
Credenciales opcionales de Azure Active Directory usadas para acceder a azure Key Vault. No es necesario si se usa la identidad administrada en su lugar. |
|
identity | SearchIndexerDataIdentity: |
Una identidad administrada explícita que se va a usar para esta clave de cifrado. Si no se especifica y la propiedad de credenciales de acceso es null, se usa la identidad administrada asignada por el sistema. Al actualizar al recurso, si no se especifica la identidad explícita, permanece sin cambios. Si se especifica "none", se borra el valor de esta propiedad. |
keyVaultKeyName |
string |
Nombre de la clave de Azure Key Vault que se usará para cifrar los datos en reposo. |
keyVaultKeyVersion |
string |
La versión de la clave de Azure Key Vault que se usará para cifrar los datos en reposo. |
keyVaultUri |
string |
El URI de azure Key Vault, también denominado nombre DNS, que contiene la clave que se va a usar para cifrar los datos en reposo. Un identificador URI de ejemplo podría ser |