PERF 4: データベースソリューションをどのように選択していますか。
システムにとって最適なデータベースソリューションは、可用性、整合性、分断耐性、レイテンシー、耐久性、スケーラビリティ、クエリ機能などの要件に応じて異なります。多くのシステムでは、サブシステムごとに異なるデータベースソリューションを使用しているため、パフォーマンスを向上させるための機能も異なります。システムに対して適切でないデータベースソリューションや機能を選択すると、パフォーマンス効率が低下する場合があります。
リソース
AWS purpose-built databases (DAT209-L)
Amazon Aurora storage demystified: How it all works (DAT309-R)
Amazon DynamoDB deep dive: Advanced design patterns (DAT403-R1)
Cloud Databases with AWS
AWS Database Caching
Amazon DynamoDB Accelerator
Amazon Aurora best practices
Amazon Redshift performance
Amazon Athena top 10 performance tips
Amazon Redshift Spectrum best practices
Amazon DynamoDB best practices
ベストプラクティス:
-
データの特性を理解する: ワークロード内のデータのさまざまな特性について理解します。ワークロードについて、トランザクションが必要かどうか、データとどのようにやり取りするか、およびパフォーマンス需要が何かを判断します。このデータを使用して、ワークロードに最高パフォーマンスを提供するデータベースアプローチを選択します (リレーショナルデータベース、NoSQL key-value 、ドキュメント、ワイドカラム、グラフ、時系列、またはインメモリストレージなど)。
-
使用可能なオプションを評価する: ワークロードのストレージメカニズムの一部として利用できるサービスおよびストレージオプションを評価します。データストレージのために、所定のサービスまたはシステムをいつどのように使用するのかを理解します。プロビジョンド IOPS、メモリとコンピューティングのリソース、およびキャッシングなど、データベースのパフォーマンスと効率性を最適化できる利用可能な設定オプションについて学びます。
-
データベースのパフォーマンスメトリクスを収集して記録する: データベースのパフォーマンスに関連するパフォーマンスの測定値を記録するツール、ライブラリ、システムを使用します。例えば、1 秒あたりのトランザクション数、実行速度の遅いクエリ、データベースにアクセスする際に生じるシステムレイテンシーなどを測定します。このデータを使用して、データベースシステムのパフォーマンスを理解します。
-
アクセスパターンに基づいてデータストレージを選択する: ワークロードのアクセスパターンを使用して、使用するサービスとテクノロジーを決定します。たとえば、トランザクションを必要とするワークロード、または高スループットを提供するが、必要に応じて結果整合になるという key-value ストアには、リレーショナルデータベースを使用します。
-
アクセスパターンとメトリクスに基づいてデータストレージを最適化する: データの保存方法とクエリ方法を最適化して可能な限り最高のパフォーマンスを達成するパフォーマンス特性とアクセスパターンを使用します。インデックス作成、キー配布、データウェアハウス設計、またはキャッシング戦略などの最適化が、システムのパフォーマンスまたは全体的な効率性にどのように影響するかを測定します。
改善計画
データの特性を理解する
使用可能なオプションを評価する
データベースのパフォーマンスメトリクスを収集して記録する
アクセスパターンに基づいてデータストレージを選択する
アクセスパターンとメトリクスに基づいてデータストレージを最適化する