ライフサイクル管理方針FAQ

この記事では、Azure Blob Storageにおけるライフサイクル管理ポリシーに関するよくある質問に答えます。

新しい方針を作りました。 なぜアクションはすぐに実行されないのでしょうか?

一度ポリシーを設定すると、効果が発揮されるまでに最大24時間かかることがあります。 ポリシーが発動すると、アクションの実行時間はストレージアカウントの規模や実行される操作によって異なる場合があります。

既存のポリシーを更新した場合、アクションが実行されるまでにどれくらいかかりますか?

更新されたポリシーは、施行までに最大24時間かかることがあります。 ポリシーが発動すると、アクションが実行される時間はストレージアカウントの規模や実行される操作によって異なります。 もしアップデートがルールを無効化または削除するもので、そのルールが使われ enableAutoTierToHotFromCool 場合、ホットティアへの自動ティアリングは依然として行われます。 例えば、最後のアクセスに基づいて enableAutoTierToHotFromCool を含むルールを設定する。 ルールが無効化または削除されている場合、ブロブが現在クール層またはコールド層にあり、その後アクセスされると、ホット層に戻ります。これは、ライフサイクル管理の対象外のアクセス時に適用されるためです。 ライフサイクル管理ルールが無効化または削除されると、ブロブはホットからクール、コールドに移動しません。 autoTierToHotFromCoolを防ぐ唯一の方法は、最終アクセス時間の追跡をオフにすることです。

実行は完了しますが、一部の BLOB は移動または削除されません

ストレージアカウントのサイズやオブジェクト数によっては、すべてのオブジェクトを処理するために複数回の実行が必要になるかもしれません。 また、ストレージリソースログを確認して、ライフサイクル管理ポリシーが操作を実行しているかも確認できます。

ポリシーではブロブの実行と削除が行われているにもかかわらず、容量の変化は見られません

ストレージアカウントでソフト削除やバージョン管理などのデータ保護機能が有効になっているか確認してください。 たとえポリシーがブロブを削除しているとしても、それらのブロブはソフト削除状態や古いバージョンのまま存在している可能性があります。

アーカイブされた塊を水和させた。 一時的にアーカイブティアに戻されるのを防ぐにはどうすればいいですか?

ストレージアカウントにライフサイクル管理ポリシーが適用されている場合、ブロブの階層を変更して再ハイドレートすると、ライフサイクルポリシーによってブロブがアーカイブ階層に戻されるシナリオが生じることがあります。 この条件は、最後の修正時刻、作成時間、または最終アクセス時間がポリシーの設定の閾値を超えた場合に発生します。 この状態を防ぐ方法は3つあります。

  • daysAfterLastTierChangeGreaterThan条件を保険契約のtierToArchive行動に加えましょう。 BLOB をアーカイブするためのライフサイクル管理ポリシーの使用を参照してください。

  • このブロブに影響を与えるルールを一時的に無効にして、再びアーカイブされるのを防ぎましょう。 ブロブを安全にアーカイブ階層に戻せるようになったら、ルールを再度有効にしてください。

  • もしブロブがホット、クール、コールドのいずれかの階層に常時留まる必要がある場合は、ライフサイクル管理ポリシーが適用されていない別の場所にブロブをコピーしてください。

Blobのプレフィックスマッチ文字列は、そのポリシーを期待されたblobに適用しませんでした

ポリシーのblobプレフィックスマッチフィールドは、ポリシーアクションを適用したいブロブにマッチングするための完全または部分的なブロブパスです。 パスはコンテナ名から始まらなければなりません。 プレフィックスマッチを指定しなければ、そのポリシーはストレージアカウント内のすべてのブロブに適用されます。 接頭辞のマッチ文字列の形式は [container name]/[blob name]です。 接頭辞マッチ文字列に関する以下のポイントを覚えておいてください:

  • container1/のようなプレフィックスマッチ文字列は、container1と名付けられたコンテナ内のすべてのブロブに適用されます。 container1の接頭辞マッチ文字列は、後尾にスラッシュ文字(/)を含まないもので、コンテナ名が文字列container1で始まるすべてのコンテナ内のブロブに適用されます。 プレフィックスは container11container1234container1abなどのコンテナに対応します。
  • container1/sub1/のプレフィックスマッチ文字列は、container1という名前のコンテナ内の文字列sub1/で始まるすべてのブロブに適用されます。 例えば、接頭辞は container1/sub1/test.txtcontainer1/sub1/sub2/test.txt という名前のブロブに一致します。
  • アスタリスク文字 * はブロブ名の有効な文字です。 接頭辞にアスタリスク文字を使うと、その接頭辞は名前にアスタリスクが付いたブロブをマッチさせます。 アスタリスクはワイルドカードキャラクターとして機能しません。
  • 疑問符の文字 ? はブロブ名の有効な文字です。 プレフィックスにクエスチョンマーク文字を使うと、そのプレフィックスは名前に疑問符が付いたブロブをマッチさせます。 クエスチョンマークはワイルドカードキャラクターとして機能しません。
  • プレフィックスマッチは正の(=)論理比較のみを考慮します。 それは否定的(!=)論理的比較を無視します。
  • プレフィックス一致は、大文字と小文字を区別して動作します。

ポリシーがいつ実行されるかを特定する方法はありますか?

残念ながら、ポリシーが実行される時間を追跡する方法はなく、バックグラウンドでのスケジューリングプロセスです。 ライフサイクルポリシーは、ルールが作成されたり更新されたりしてから24時間以内に実行が始まります。 ポリシーは必要に応じてバックグラウンドでオブジェクトを継続的に処理します。 システムはワークロードからのリクエストに優先権を与えます。 したがって、ポリシーがいつ実行されているかを追跡する方法はありません。 オブジェクト処理にかかる時間は、ストレージアカウントのリクエストレートによって異なる場合があります。 ストレージアカウントのリクエストレートが上限に近づくと、この期間はさらに長くなることがあります。

次のステップ