Поделиться через


Использование Microsoft Graph для расширения поиска (Майкрософт) с помощью пользовательских данных

В этой статье описывается распространенный шаблон интеграции Microsoft Graph для бизнес-сценария, который требует добавления пользовательских корпоративных данных в поиск (Майкрософт) и Microsoft 365 Copilot интерфейсы. Пользовательские данные попадают в неструктурированное хранилище Microsoft 365 и добавляются в различные индексы поиска.

Этот неинтерактивный сценарий имеет следующие требования:

  • Тип интеграции данных, так как он предоставляет только пользовательские данные и не использует функции Microsoft 365 в клиентских приложениях.
  • Входящий поток данных между приложением и Microsoft 365.
  • Большой объем данных для индексирования.
  • Пакетная обработка данных и планирование отправки и приема, что приводит к увеличению задержки данных.

Лучшим вариантом для этого сценария является использование соединителей Microsoft Graph. На следующей схеме показана архитектура для этого решения.

Схема, показывающая стороннее приложение, выполняющее проверку подлинности с помощью Microsoft Entra ID, подключающееся к Microsoft Graph и экспортируемое содержимое в семантический поиск.

Компоненты решения

Архитектура этого решения включает в себя следующие компоненты:

  • Служба приложений Azure, которая позволяет создавать и размещать веб-приложения, запланированные задания и API RESTful на предпочитаемом языке программирования без необходимости управлять инфраструктурой. Он предлагает автоматическое масштабирование и высокий уровень доступности, поддерживает Windows и Linux, а также включает автоматическое развертывание из GitHub, Azure DevOps или любого репозитория Git.
  • Microsoft Entra ID, который необходим для управления проверкой подлинности для Microsoft Graph и поддерживает делегированные разрешения и разрешения приложений для включения потока OAuth.
  • Api RESTful Microsoft Graph, включая соединители, доступ к ним осуществляется через одну конечную точку: https://graph.microsoft.com.
  • Пользовательское приложение, реализующее пользовательскую логику.

Рекомендации

Использование этого шаблона интеграции поддерживается следующими рекомендациями.

  • Доступность. Клиентское приложение периодически отправляет данные через API Microsoft Graph. Неинтерактивное клиентское приложение выполняет запросы и отправляет данные с частотой, контролируемой клиентской средой и ограниченной регулированием соединителей Microsoft Graph.

  • Задержка. Клиентское приложение использует API-интерфейсы синхронных соединителей Microsoft Graph и ожидает ответа, но может возникнуть некоторая задержка в зависимости от сетевых условий и нагрузки на службу Microsoft Graph.

  • Масштабируемость. Клиентское приложение ограничено 30 подключениями с не более чем 50 000 000 элементов на клиент, поэтому масштабируемость ограничена. Если объем данных большой, синхронная обработка может стать проблемой и препятствием.

  • Сложность решения. Это решение может использовать соединители, созданные независимыми поставщиками программного обеспечения (ISV), но если оно обращается к пакетам SDK для Microsoft Graph или API Microsoft Graph, ему необходимо сериализовать пользовательские данные в требуемом формате для соединителей. Это обеспечивает гибкость, но и повышает сложность. Таким образом, это решение может варьироваться от низкой до средней сложности.