次の方法で共有


Microsoft Graph を使用してカスタム データを使用して Microsoft Search を拡張する

この記事では、Microsoft Search と Microsoft 365 Copilot エクスペリエンスにカスタムエンタープライズ データを追加する必要があるビジネス シナリオの一般的な Microsoft Graph 統合パターンについて説明します。 カスタム データは、非構造化 Microsoft 365 ストレージに取り込み、さまざまな検索インデックスに追加されます。

この非対話型シナリオには、次の要件があります。

  • データ統合の種類は、カスタム データのみを提供し、顧客アプリで Microsoft 365 機能を使用しないためです。
  • アプリと Microsoft 365 の間の受信データ フロー。
  • インデックス作成用のデータ 量が多い。
  • アップロードとインジェストのデータバッチ処理とスケジュール設定により、データ待機時間が長くなります。

このシナリオに最適なオプションは、Microsoft Graph コネクタを使用することです。 次の図は、このソリューションのアーキテクチャを示しています。

Microsoft Entra IDでの認証、Microsoft Graph への接続、セマンティック検索へのコンテンツのエクスポートを示すサード パーティ製アプリを示す図。

ソリューション コンポーネント

このソリューションのアーキテクチャには、次のコンポーネントが含まれています。

  • Azure App Service。これにより、インフラストラクチャを管理することなく、任意のプログラミング言語で Web アプリ、スケジュールされたジョブ、RESTful API を構築およびホストできます。 自動スケーリングと高可用性を提供し、Windows と Linux の両方をサポートし、GitHub、Azure DevOps、または任意の Git リポジトリからの自動デプロイを可能にします。
  • Microsoft Entra ID。これは Microsoft Graph の認証を管理するために必要であり、OAuth フローを有効にするために委任されたアクセス許可とアプリケーションのアクセス許可をサポートします。
  • コネクタを含む Microsoft Graph RESTful API は、単一のエンドポイント ( https://graph.microsoft.com) を介してアクセスされます。
  • カスタム ロジックを実装するカスタム アプリ。

考慮事項

次の考慮事項は、この統合パターンの使用をサポートします。

  • 可用性: クライアント アプリは、Microsoft Graph API を介してデータを定期的に送信します。 非対話型クライアント アプリは、要求を行い、クライアント環境によって制御され、Microsoft Graph コネクタの調整によって制限された頻度でデータをアップロードします。

  • 待機時間: クライアント アプリは同期 Microsoft Graph コネクタ API を使用し、応答を期待しますが、ネットワーク条件と Microsoft Graph サービスの負荷によっては待機時間が発生する可能性があります。

  • スケーラビリティ: クライアント アプリは、テナントあたり 50,000,000 項目以下の 30 接続に制限されているため、スケーラビリティは制限されます。 データ ボリュームが大きい場合、同期処理が課題と障害になる可能性があります。

  • ソリューションの複雑さ: このソリューションでは、独立系ソフトウェア ベンダー (ISV) によって構築されたコネクタを使用できますが、Microsoft Graph SDK または Microsoft Graph API にアクセスする場合は、カスタム データをコネクタに必要な形式にシリアル化する必要があります。 これは柔軟性を提供しますが、複雑さも増します。 したがって、このソリューションは低から中程度の複雑さの範囲です。