この記事では、Azure Blob Storage インベントリ機能と Azure Synapse を使用して、コンテナーあたりの BLOB の数と合計サイズを計算します。 これらの値は、コンテナーごとの BLOB の使用を最適化する場合に便利です。
前提条件
インベントリ レポートを有効にする
この方法の最初の手順は、ストレージ アカウントで インベントリ レポートを有効に することです。 最初のレポートが生成されるまで、インベントリ レポートを有効にしてから最大 24 時間待つ必要がある場合があります。
分析するインベントリ レポートがある場合は、 ストレージ BLOB データ閲覧者 ロールを自分に割り当てることで、レポート CSV ファイルが存在するコンテナーへの読み取りアクセス権を自分自身に付与します。 レポートの実行に使用しているアカウントのメール アドレスを必ず使用してください。 Azure ロールベースのアクセス制御 (Azure RBAC) を使用してユーザーに Azure ロールを割り当てる方法については、「Azure portal を使用した Azure ロールの割り当て」に記載されている手順に従います。
注
インベントリ レポートから BLOB サイズを計算するには、ルール定義に [コンテンツ長 スキーマ] フィールドを必ず含めます。
Azure Synapse ワークスペースを作成する
次 に、Azure Synapse ワークスペースを作成 し、そこで SQL クエリを実行してインベントリの結果を報告します。
SQL クエリを作成する
Azure Synapse ワークスペースを作成したら、次の手順を実行します。
https://web.azuresynapse.net に移動します。
左端にある [ 開発 ] タブを選択します。
大きいプラス記号 (+) を選択して項目を追加します。
SQL スクリプトを選択します。
SQL クエリを実行する
次の手順に従ってください。
Azure Synapse ワークスペースに次の SQL クエリを追加して 、インベントリ CSV ファイルを読み取ります。
bulkパラメーターには、分析するインベントリ レポート CSV ファイルの URL を使用します。SELECT LEFT([Name], CHARINDEX('/', [Name]) - 1) AS Container, COUNT(*) As TotalBlobCount, SUM([Content-Length]) As TotalBlobSize FROM OPENROWSET( bulk '<URL to your inventory CSV file>', format='csv', parser_version='2.0', header_row=true ) AS Source GROUP BY LEFT([Name], CHARINDEX('/', [Name]) - 1)右側のプロパティ ウィンドウで SQL クエリに名前を付けます。
Ctrl キーを押しながら S キーを押すか、[ すべて発行 ] ボタンを選択して、SQL クエリを発行します。
[ 実行 ] ボタンを選択して SQL クエリを実行します。 コンテナーあたりの BLOB 数と合計サイズが 結果 ペインに報告されます。