SUS04-BP05 不要なデータや重複するデータを削除する
不要なデータや重複するデータを削除し、データセットの保存に必要なストレージリソースを最小限に抑えます。
一般的なアンチパターン:
-
簡単に取得または再作成できるデータを複製している。
-
データの重要性を考慮せず、すべてのデータをバックアップしている。
-
データの削除は、不定期、運用イベント時のみ、またはまったく行わない。
-
ストレージサービスの耐久性に関係なく、データを冗長に保存している。
-
ビジネス上の正当な理由なく Amazon S3 バージョニングを有効にしている。
このベストプラクティスを活用するメリット: 不要なデータを削除すると、ワークロードに必要なストレージサイズとワークロードの環境への影響が軽減されます。
このベストプラクティスを活用しない場合のリスクレベル: 中
実装のガイダンス
不要な冗長データセットを削除すると、ストレージコストと環境フットプリントを削減できます。この方法により、コンピューティングリソースが不要なデータではなく重要なデータのみを処理するため、コンピューティングの効率も向上する可能性があります。不要なデータの削除を自動化する。ファイルおよびブロックレベルでデータの重複を排除するテクノロジーを使用する。ネイティブデータレプリケーションと冗長性のためのサービス機能を使用します。
実装手順
-
パブリックデータセットの評価: AWS Data Exchange
および AWS の Open Data で公開されている既存のデータセットを使用し、データの保存を回避できるかどうかを評価します 。 -
データの重複排除: ブロックレベルとオブジェクトレベルでデータを重複排除できる仕組みを使用します。AWS でデータの重複をなくす方法の例を次に示します。
ストレージサービス 重複排除メカニズム AWS Lake Formation FindMatches
の新しい FindMatches ML Transform を使用して、データセット (識別子のないレコードを含む) 間で一致するレコードを検索します。 Amazon FSx for Windows のデータ重複排除を使用します。
スナップショットは増分バックアップです。つまり、最後にスナップショットを作成した時点から、ボリューム上で変更のあるブロックだけが保存されます。
-
ライフサイクルポリシーの使用: ライフサイクルポリシーを使用して、未使用のアセットを自動的に削除します。削除には、Amazon DynamoDB の有効期限や Amazon S3 Lifecycle、Amazon CloudWatch Logs 保持などのネイティブサービス機能を使用します。
-
データ仮想化の使用: AWS のデータ仮想化機能を使用してデータをソースに保持し、データの重複を回避します。
-
増分バックアップの使用: 増分バックアップが可能なバックアップテクノロジーを使用します。
-
ネイティブ耐久性の使用: セルフマネージドテクノロジー (独立ディスクの冗長アレイ (RAID) など) の代わりに Amazon S3 の耐久性と Amazon EBS のレプリケーションを活用して、耐久性の目標を達成します。
-
効率的なログの使用: ログおよび追跡データを一元化し、同一のログエントリの重複を排除して、必要に応じて冗長性を調整するメカニズムを確立します。
-
効率的なキャッシュの使用: 正当化された場合にのみキャッシュを事前入力します。
-
キャッシュのモニタリングとオートメーションを確立し、それに従ってキャッシュをサイズ変更します。
-
古いバージョンのアセットの削除: ワークロードの新しいバージョンをプッシュする際に、オブジェクトストアとエッジキャッシュから古いデプロイとアセットを削除します。
リソース
関連ドキュメント:
関連動画:
関連する例: