次の方法で共有


BLOB インベントリのパフォーマンス特性

Azure Storage BLOB インベントリは、Azure Blob Storage アカウントに格納されているオブジェクトを管理および追跡するための不可欠なツールです。 ストレージ リソースの包括的な概要が提供されるため、データ管理とコストの最適化に関する十分な情報に基づいた意思決定を行うことができます。

BLOB インベントリ レポートを有効にすると、ストレージ アカウント内のオブジェクトは、インベントリ ポリシーで定義されているルールを使用して定期的にスキャンされます。 在庫レポートの生成にかかる時間は、いくつかの要因によって異なります。 これらの要因には、オブジェクトの数、ディレクトリ構造、ルール サブタイプによって適用されるフィルター、ストレージ アカウントでの顧客のワークロード、ストレージ リソースの可用性などが含まれます。 これらの要因によっては、ストレージ アカウント内のすべてのオブジェクトの処理が完了するまでに数日かかる場合があります。 インベントリのパフォーマンスは、スキャンによって異なる場合もあれば、スキャン中にも異なる場合もあります。

BLOB インベントリのパフォーマンスに影響を与える要因

BLOB インベントリを使用してインベントリ レポートを生成する場合、いくつかの重要な要因がそのパフォーマンスに影響する可能性があります。 これらの要因を理解することは、在庫プロセスを最適化し、効率的なデータ管理を可能にするのに役立ちます。

階層型名前空間が有効なアカウント内のオブジェクトの分散

階層型名前空間が有効なアカウント内でのオブジェクトの分散は、インベントリのパフォーマンスに大きな影響を与える可能性があります。 BLOB インベントリは一度に 1 つのディレクトリをスキャンし、そのスキャンを完了してから次のディレクトリに移動します。 そのため、特にスパース オブジェクト分散と深い入れ子を使用するディレクトリの数が多い場合は、インベントリ レポートの生成に必要な時間が長くなる可能性があります。

インベントリ ルールに対して処理されたオブジェクトの数

インベントリ ルールに基づいてスキャンされたオブジェクトの合計数は、処理パフォーマンスの重要な要素です。 大量のオブジェクトを対象とするルールでは、インベントリ レポートを生成するために必要な時間とリソースが増えます。 インベントリ ルールにバージョン、スナップショット、論理的に削除されたオブジェクトが含まれている場合、処理するオブジェクトの数が増えます。 これらのサブタイプが大量に存在する場合、インベントリ レポートの生成に必要な処理時間をさらに延長できます。

インベントリ レポートのエクスポート形式

インベントリ レポート (CSV または Apache Parquet) に対して選択したエクスポート形式は、パフォーマンスに影響を与える可能性があります。 Parquet は高速なデータ処理用に最適化されていますが、CSV と比較してレポート生成が遅くなる可能性があるオーバーヘッドが発生します。

多数の論理的に削除されたオブジェクト

論理的に削除されたオブジェクトは、完全には削除されませんが、インベントリ スキャンには引き続き含まれます。 これらのオブジェクトの量が多い場合、処理時間が長く、パフォーマンスが低下する可能性があります。 これらの要因を考慮することで、インベントリ実行のパフォーマンスを向上させ、より効率的なデータ管理エクスペリエンスを実現できます。

BLOB インベントリのパフォーマンスを向上させるためのベスト プラクティス

最適なパフォーマンスとコスト効率を維持するには、Azure Blob Storage を効率的に管理することが不可欠です。 Azure Storage BLOB インベントリのパフォーマンスを強化するためのベスト プラクティスを次に示します。

階層型名前空間が有効なアカウントでスパース アカウントを回避する

スパース アカウントは、多数のディレクトリに分散された多数のオブジェクトを含むアカウントです。 これらのディレクトリには、深く入れ子になった構造が含まれている場合と含まれていない場合があります。 スパース アカウントでは、ファイルとディレクトリの比率が非常に低くなるため、インベントリ レポートの生成に非効率性が発生し、エラーが発生する可能性があります。 これらの非効率性を軽減するには、階層型名前空間が有効なストレージ アカウントが適切に整理されていることを確認し、オブジェクトの分散が疎にならないようにします。

エクスポート形式に CSV を使用する

インベントリ レポートを生成するときに、ユース ケースで高速なデータ処理が必要ない場合は、csv 形式を選択します。 Parquet は、パフォーマンスに最適化された列形式のストレージ ファイル形式であり、データ処理用に読み取る最も高速な形式の 1 つです。 ただし、Parquet 形式では、CSV 形式でレポートを生成するよりも時間がかかるため、レポートの生成に必要な時間が長くなる可能性があります。 レポートを後処理するために Parquet 形式が必要な場合は、CSV を Parquet 形式に変換する利用可能なオープンソース ツールを利用できます。

プレフィックスを使用してインベントリ ルールのスコープを設定する

ストレージ アカウント全体でインベントリを実行する代わりに、プレフィックス一致フィルターを使用して、データの特定のサブセットのインベントリ レポートを生成します。

  • プレフィックスを含める: このフィルターは、コンテナー内の一連のコンテナーまたはパスを対象とします。 このアプローチは、在庫レポートの範囲を絞り込むのに役立ち、プロセスをより迅速かつ効率的にします。

  • プレフィックスを除外する: このフィルターを使用して、特定のサブセットを除外します。 この方法は、インベントリ レポートの範囲を絞り込むのにも役立ちます。 詳細については、「ルール フィルター」を参照してください。

関連するフィールドを選択する

必要な関連フィールドのみを選択して、インベントリ レポートをカスタマイズします。 これにより、処理およびエクスポートされるデータの量が減り、レポートの生成が迅速になり、分析が容易になります。 インベントリ スキーマ フィールドの詳細については、BLOB インベントリでサポートされているカスタム スキーマ フィールドに関するページを参照してください。

サブタイプの包含: 削除されたオブジェクト、スナップショット、およびバージョン

これらのサブタイプを含めると、ストレージ アカウントをより包括的に把握できますが、監査と管理のニーズに不可欠かどうかを評価することが重要です。 重要でない場合は、除外することで、レポート生成プロセスのパフォーマンスと効率を向上させることができます。 最近のインベントリ実行で削除されたオブジェクトを識別するには、現在の実行の BLOB 名と前回の実行の BLOB 名を比較します。 この違いは、最近削除されたオブジェクトの一覧を提供できます。

BLOB インベントリ イベントをサブスクライブする

BLOB インベントリ イベントをサブスクライブすることで、ユーザーが引き起こしたエラーに関する情報を常に把握します。 このプロアクティブなアプローチは、問題に迅速に対処するのに役立ちます。 インベントリ イベントをサブスクライブする方法の詳細については、「 BLOB インベントリ ポリシー完了イベントのサブスクライブ」を参照してください。

容量の予期しない増加を監視する

BLOB のバージョン、スナップショット、または論理的に削除されたオブジェクトの蓄積を示す可能性があるため、ストレージ アカウントの容量の予期しないスパイクに注意してください。 これらの変更を監視すると、潜在的な問題がパフォーマンスに影響を与える前に検出して解決するのに役立ちます。 さらに、これらのオブジェクトのライフサイクルを管理すると、不要なビルドアップを防ぎ、BLOB インベントリのパフォーマンスを向上させることができます。 BLOB ライフサイクル管理の詳細については、Azure Blob Storage ライフサイクル管理の概要に関するページを参照してください

これらのベスト プラクティスに従うことで、BLOB インベントリのパフォーマンスを向上させ、Azure Blob Storage の効率的で効果的な管理を確保できます。

次のステップ