Importar datos en Azure AI Search

En Azure AI Search, las consultas se ejecutan sobre el contenido propiedad del usuario cargado en un índice de búsqueda. En este artículo se describen los dos flujos de trabajo básicos para rellenar un índice: insertar los datos en el índice mediante programación o extraer los datos mediante un indexador de búsqueda.

Ambos enfoques cargan documentos desde un origen de datos externo. Aunque puede crear un índice vacío, no se puede consultar hasta que agregue el contenido.

Nota:

Si el enriquecimiento con IA es un requisito de la solución, debe usar el modelo de extracción (indexadores) para cargar un índice. Los conjuntos de aptitudes están conectados a un indexador y no se ejecutan de manera independiente.

Inserción de datos en un índice

El modelo de inserción es un enfoque que usa las API para cargar documentos en un índice de búsqueda existente. Puede cargar documentos individualmente o en lotes de hasta 1000 por lote o 16 MB por lote, lo que ocurra primero.

Entre las ventajas clave se incluyen las siguientes:

  • No hay restricciones en el tipo de origen de datos. La carga debe estar compuesta de documentos JSON que se asignan al esquema de índice, pero los datos se pueden originar desde cualquier lugar.

  • No hay restricciones en la frecuencia de ejecución. Puede insertar los cambios a un índice tantas veces como desee. Para las aplicaciones que tienen requisitos de baja latencia (por ejemplo, cuando el índice debe estar sincronizado con las fluctuaciones del inventario de productos), el modelo de inserción es la única opción.

  • Conectar ivity y la recuperación segura de documentos están totalmente bajo su control. Por el contrario, las conexiones del indexador se autentican mediante las características de seguridad proporcionadas en Azure AI Search.

Cómo insertar los datos en un índice de Azure AI Search

Use las SIGUIENTES API para cargar uno o varios documentos en un índice:

No se admite la inserción de datos a través de Azure Portal.

Para obtener una introducción a las API de inserción, vea lo siguiente:

Acciones de indexación: carga, combinación, mergeOrUpload y eliminación

Puede controlar el tipo de acción de indexación por documento, especificando si se debe cargar el documento totalmente, combinarlo con el contenido del documento existente o eliminarlo.

Tanto si usa la API REST como un SDK de Azure, se admiten las siguientes operaciones de documento para la importación de datos:

  • Cargue, similar a un "upsert" donde se inserta el documento si es nuevo y se actualiza o reemplaza si existe. Si al documento le faltan valores que requiere el índice, el valor del campo de documento se establece en NULL.

  • merge actualiza un documento que ya existe y produce un error en un documento que no se encuentra. La operación "merge" reemplaza los valores existentes. Por esta razón, asegúrese de comprobar que los campos de colección contengan varios valores, como los campos de tipo Collection(Edm.String). Por ejemplo, si el campo tags empieza con un valor de ["budget"] y ejecuta una operación "merge" con el valor ["economy", "pool"], el valor final del campo tags será ["economy", "pool"]. No será ["budget", "economy", "pool"].

  • mergeOrUpload (combinación o carga) se comporta como merge si el documento existe, y como upload si el documento es nuevo.

  • delete quita todo el documento del índice. Si solo quiere quitar un campo individual, utilice merge en su lugar, estableciendo el campo en cuestión en NULL.

Extracción de datos en un índice

El modelo de extracción usa indexadores que se conectan a un origen de datos compatible y carga automáticamente los datos en el índice. Los indexadores de Microsoft están disponibles para estas plataformas:

Puede usar conectores de terceros, desarrollados y mantenidos por asociados de Microsoft. Para obtener más información y vínculos, consulte Galería de orígenes de datos.

Los indexadores conectan un índice a un origen de datos (normalmente una tabla, vista o estructura equivalente) y asignan campos de origen a los campos equivalentes del índice. Durante la ejecución, el conjunto de filas se transforma automáticamente en JSON y se carga en el índice especificado. Todos los indexadores admiten la programación, de modo que se puede especificar con qué frecuencia se deben actualizar los datos. La mayoría de los indexadores proporcionan seguimiento de cambios, siempre el origen de datos lo admita. Mediante el seguimiento de cambios y eliminaciones en documentos existentes, además de reconocer nuevos documentos, los indexadores eliminan la necesidad de administrar activamente los datos del índice.

Cómo extraer los datos en un índice de Azure AI Search

Use las siguientes herramientas y API para la indexación basada en indexadores:

La funcionalidad del indexador se expone en [Azure Portal], la API REST y el SDK de .NET.

Una ventaja del uso del portal es que Azure AI Search puede generar normalmente un esquema de índice predeterminado mediante la lectura de los metadatos del conjunto de datos de origen.

Verificación de la importación de datos con el Explorador de búsqueda

Una forma rápida de realizar una comprobación preliminar en la carga de documentos es usar el Explorador de búsqueda en el portal.

Screenshot of Search Explorer command in the Azure portal.

El explorador permite consultar un índice sin tener que escribir código. La búsqueda se basa en los valores predeterminados, como la sintaxis simple y el parámetro de consulta searchMode predeterminado. Los resultados se devuelven en formato JSON, con el fin de que pueda revisar todo el documento.

Esta es una consulta de ejemplo que puede ejecutar en el Explorador de búsqueda en la vista JSON. "HotelId" es la clave de documento del índice hotels-sample-index. El filtro proporciona el id. de documento de un documento específico:

{
  "search": "*",
  "filter": "HotelId eq '50'"
}

Si usa REST, esta consulta de búsqueda consigue el mismo propósito.

Consulte también