SUS03-BP05 データアクセスとストレージパターンのサポートが最も優れたソフトウェアパターンとアーキテクチャを使用する
データがどのようにワークロード内で使用されているか、ユーザーに消費されているか、転送されているか、保存されているかを理解します。データへのアクセスと保存を最適にサポートするソフトウェアパターンとアーキテクチャを使用して、ワークロードのサポートに必要なコンピューティング、ネットワーク、ストレージのリソースを最小化します。
一般的なアンチパターン:
-
すべてのワークロードのデータの保存とアクセスのパターンが類似していると考えている。
-
ストレージ階層を 1 つだけ使用し、すべてのワークロードがその階層に適していると考えている。
-
時間が経過してもデータアクセスパターンが変わらないと考えている。
-
アーキテクチャはデータアクセスの高バーストの可能性をサポートしているが、その結果リソースがほとんどの時間でアイドルのままになる。
このベストプラクティスを活用するメリット: データのアクセスパターンおよびストレージパターンにもとづいてアーキテクチャを選択し最適化すると、開発の複雑性が下がり、全体の使用率が増加します。グローバルテーブル、データのパーティショニング、キャッシュをいつ使用するべきかを理解することで、運用上の諸経費を減らし、ワークロードのニーズに応じてスケーリングできるようになります。
このベストプラクティスが確立されていない場合のリスクレベル: ミディアム
実装のガイダンス
データの特性やアクセスパターンに最も合うソフトウェアやアーキテクチャのパターンを使用します。例えば、お客様独自の分析ユースケースに合わせて最適化された目的別サービスを使用できる、AWS のモダンデータアーキテクチャ
実装手順
-
データの特性やアクセスパターンを分析して、クラウドリソースに最適な構成を特定します。考慮する主な特徴には次のものがあります。
-
データタイプ: 構造、半構造、非構造
-
データ成長: 制限あり、制限なし
-
データ保存期間: 永続、一時的、一過性
-
アクセスパターン: 読み取りまたは書き取り、更新頻度、急増、または安定
-
-
データアクセスとストレージパターンのサポートが最も優れたアーキテクチャパターンを使用します。
-
Let's Architect! Modern data architectures
(構築してみよう! モダンデータアーキテクチャ) -
Databases on AWS: The Right Tool for the Right Job
(AWS のデータベース: 適材適所で使い分けるツール)
-
-
圧縮データをネイティブに操作するテクノロジーを使用します。
-
アーキテクチャ内のデータ処理に、目的別の分析サービス
を使用します。 -
主要なクエリパターンに対して最も優れたサポートをするデータベースエンジンを使用します。データベースインデックスを管理して、効率的なクエリ実行を確実にします。詳細については、AWS のデータベース
を参照してください。 -
アーキテクチャで消費されるネットワーク容量が削減できるネットワークプロトコルを選択します。
リソース
関連するドキュメント:
-
Converting Your Input Record Format in Firehose (Kinesis Data Firehose の入力レコード形式を変換する)
-
Amazon S3 Intelligent-Tiering storage class
(Amazon S3 Intelligent-Tiering ストレージクラス)
関連動画:
-
Building modern data architectures on AWS
(AWS にモダンデータアーキテクチャを構築する)