Azure Functions における Azure Blob Storage のバインドの概要

Azure Functions はトリガーとバインドを使用して Azure Storage と統合されます。 Blob Storage との統合により、BLOB データの変更に対応し、値の読み取りと書き込も行う関数を作成することができます。

アクション 種類
Blob Storage データが変更されたときに関数を実行する トリガー
関数で Blob Storage データを読み取る 入力バインド
関数で Blob Storage データを書き込めるようにする 出力バインド

Functions アプリに追加する

Functions 2.x 以降

トリガーとバインドを使用するには、適切なパッケージを参照する必要があります。 NuGet パッケージは .NET クラス ライブラリに使用されますが、他のすべてのアプリケーションの種類には拡張バンドルが使用されます。

Language 追加手段 解説
C# NuGet パッケージ バージョン 3.x をインストールする
C# スクリプト、Java、JavaScript、Python、PowerShell 拡張機能バンドルを登録する Visual Studio Code で使用するには Azure Tools 拡張機能をお勧めします。
C# スクリプト (Azure portal ではオンラインのみ) バインディングを追加する 関数アプリを再発行せずにポータルで既存のバインディング拡張機能を更新するには、拡張機能の更新に関する記事を参照してください。

ストレージ拡張機能 5.x 以降

ストレージのバインド拡張機能の新しいバージョンが利用可能になりました。 シークレットではなく ID を使用して接続する機能が導入されています。 マネージド ID を使用して関数アプリを構成するチュートリアルについては、ID ベースの接続を使用した関数アプリの作成に関するチュートリアルを参照してください。 .NET アプリケーションの場合は、新しい拡張機能バージョンによって、バインドできる型も変更されます。これにより、WindowsAzure.Storage および Microsoft.Azure.Storage の型が Azure.Storage.Blobs の新しい型に置き換えられます。 これらの異なる新しい型と、それらを移行する方法については、Azure.Storage.Blobs の移行ガイドに関するページを参照してください。

この拡張機能のバージョンは、NuGet パッケージ バージョン 5.x をインストールすることによって利用できます。または、host.json ファイルに次のものを追加して、拡張機能バンドル v3 から追加することもできます。

{
  "version": "2.0",
  "extensionBundle": {
    "id": "Microsoft.Azure.Functions.ExtensionBundle",
    "version": "[3.3.0, 4.0.0)"
  }
}

詳細については、[ユーザーの更新]に関するページを参照してください。

Functions 1.x

Functions 1.x アプリでは、Microsoft.Azure.WebJobs NuGet パッケージ バージョン 2.x が自動的に参照されます。

Functions 1.x での Azure Storage SDK のバージョン

Functions 1.x では、Storage トリガーとバインドは、Azure Storage SDK のバージョン 7.2.1 (WindowsAzure.Storage NuGet パッケージ) を使用します。 別のバージョンの Storage SDK を参照し、関数シグネチャで Storage SDK の型にバインドする場合は、Functions ランタイムがその型にバインドできないことを報告することがあります。 解決するには、プロジェクトで WindowsAzure.Storage 7.2.1 を参照していることを確認します。

host.json 設定

このセクションでは、このバインディングの関数で使用できる関数アプリの構成設定について説明します。 これらの設定は、拡張機能バージョン 5.0.0 以上を使用している場合にのみ適用されます。 次の host.json ファイルの例には、このバインドのバージョン 2.x 以降の設定のみが含まれています。 バージョン 2.x 以降のバージョンでの関数アプリ構成設定の詳細については、「Azure Functions の host.json のリファレンス」を参照してください。

注意

このセクションは、5.0.0 より前の拡張機能のバージョンには適用されません。 それらの以前のバージョンでは、BLOB に対する関数アプリ規模の構成設定はありません。

{
    "version": "2.0",
    "extensions": {
        "blobs": {
            "maxDegreeOfParallelism": "4"
        }
    }
}
プロパティ Default 説明
maxDegreeOfParallelism 8 * (使用可能なコアの数) BLOB によってトリガーされる関数ごとに許可される、同時呼び出しの整数の値。 許容される最小値は 1 です。

次のステップ