Compartir a través de


Uso de Microsoft Graph para aumentar Microsoft Search con datos personalizados

En este artículo se describe un patrón de integración común de Microsoft Graph para un escenario empresarial que requiere agregar datos empresariales personalizados a microsoft search y experiencias de Microsoft 365 Copilot. Los datos personalizados se ingieren en el almacenamiento de Microsoft 365 no estructurado y se agregan a varios índices de búsqueda.

Este escenario no interactivo tiene los siguientes requisitos:

  • Un tipo de integración de datos, ya que solo proporciona datos personalizados y no usa la funcionalidad de Microsoft 365 en las aplicaciones de cliente.
  • Flujo de datos de entrada entre la aplicación y Microsoft 365.
  • Un volumen de datos alto para la indexación.
  • Procesamiento por lotes de datos y programación para carga e ingesta, lo que da lugar a una mayor latencia de datos.

La mejor opción para este escenario es usar conectores de Microsoft Graph. En el diagrama siguiente se muestra la arquitectura de esta solución.

Diagrama que muestra una aplicación de terceros que se autentica con Microsoft Entra ID, se conecta a Microsoft Graph y exporta contenido a la búsqueda semántica.

Componentes de la solución

La arquitectura de esta solución incluye los siguientes componentes:

  • Azure App Service, que le permite compilar y hospedar aplicaciones web, trabajos programados y API RESTful en su lenguaje de programación preferido, sin tener que administrar la infraestructura. Ofrece escalado automático y alta disponibilidad, admite Windows y Linux y permite implementaciones automatizadas desde GitHub, Azure DevOps o cualquier repositorio de Git.
  • Microsoft Entra ID, que es necesario para administrar la autenticación de Microsoft Graph y admite permisos delegados y de aplicación para habilitar el flujo de OAuth.
  • Se accede a las API RESTful de Microsoft Graph, incluidos los conectores, a través de un único punto de conexión: https://graph.microsoft.com.
  • Una aplicación personalizada que implementa lógica personalizada.

Consideraciones

Las siguientes consideraciones admiten el uso de este patrón de integración:

  • Disponibilidad: la aplicación cliente envía periódicamente datos a través de las API de Microsoft Graph. La aplicación cliente no interactiva realiza solicitudes y carga los datos con una frecuencia controlada por el entorno de cliente y limitada por la limitación de conectores de Microsoft Graph.

  • Latencia: la aplicación cliente usa las API sincrónicas de conectores de Microsoft Graph y espera una respuesta, pero puede producirse cierta latencia en función de las condiciones de red y la carga en el servicio Microsoft Graph.

  • Escalabilidad: la aplicación cliente está limitada a 30 conexiones con no más de 50 000 000 elementos por inquilino, por lo que la escalabilidad es limitada. Si el volumen de datos es grande, el procesamiento sincrónico podría convertirse en un desafío y un obstáculo.

  • Complejidad de la solución: esta solución puede usar conectores creados por proveedores de software independientes (ISV), pero si accede a los SDK de Microsoft Graph o a las API de Microsoft Graph, debe serializar los datos personalizados en el formato necesario para los conectores. Esto proporciona flexibilidad, pero también aumenta la complejidad. Por lo tanto, esta solución puede oscilar entre complejidad baja y media.