次の方法で共有


Azure Cosmos DB と Azure Functions を使用したサーバーレス イベント ベースのアーキテクチャ

Azure Functions は、 変更フィードに接続する最も簡単な方法を提供します。 Azure Cosmos DB コンテナーの変更フィード内の新しいイベントごとに自動的にトリガーされる、小規模で反応性の高い Azure Functions を作成できます。

Azure Cosmos DB の Azure Functions トリガーを操作するサーバーレス イベントベースの関数の図。

Azure Cosmos DB 用の Azure Functions トリガーを使用すると、ワーカー インフラストラクチャを維持する必要なく、変更フィード プロセッサのスケーリングと信頼性の高いイベント検出機能を使用できます。 イベント ソーシング パイプラインの残りの部分を気にせずに、Azure 関数のロジックに集中するだけです。 トリガーを他の Azure Functions バインドと組み合わせることもできます。

Azure Functions トリガーでは 、最新バージョンの変更フィード モードが使用されます。 現時点では、Azure Cosmos DB の Azure Functions トリガーは、NOSQL 用 API でのみ使用できます。

Requirements

サーバーレス イベント ベースのフローを実装するには、次のものが必要です。

  • 監視対象コンテナー: 監視対象のコンテナーは、監視対象の Azure Cosmos DB コンテナーであり、変更フィードの生成元のデータを格納します。 監視対象コンテナーへの挿入または更新は、コンテナーの変更フィードに反映されます。
  • リース コンテナー: リース コンテナーは、複数の動的なサーバーレス Azure 関数インスタンス間で状態を維持し、動的スケーリングを可能にします。 Azure Cosmos DB の Azure Functions トリガーを使用して、リース コンテナーを自動的に作成できます。 リース コンテナーを手動で作成することもできます。 リース コンテナーを自動的に作成するには、構成CreateLeaseContainerIfNotExists プロパティを設定します。 パーティション分割されたリース コンテナーには、 /id パーティション キー定義が必要です。

Azure Cosmos DB 用の Azure Functions トリガーを作成する

Azure Cosmos DB 用の Azure Functions トリガーを使用した Azure 関数の作成が、すべての Azure Functions IDE と CLI の統合でサポートされるようになりました。

トリガーをローカルで実行する

Azure Cosmos DB エミュレーターを使用して Azure 関数をローカルで実行して、Azure サブスクリプションやコストを発生させずに、サーバーレスイベントベースのフローを作成および開発できます。

次のステップ

変更フィードの詳細については、次の記事を参照してください。