DB インスタンスのモニタリング - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

DB インスタンスのモニタリング

DB インスタンスとは、Amazon RDS の基本的な構成要素であり、クラウド上で動作する独立したデータベース環境でもあります。MySQL および MariaDB データベースの DB インスタンスは、MySQL サーバーとも呼ばれる mysqld プログラムで、これは、SQL パーサー、クエリオプティマイザ、スレッド/接続ハンドラー、システム変数とステータス変数、1 つ以上のプラガブルストレージエンジンといった、複数のスレッドやコンポーネントで構成されます。ストレージエンジンはそれぞれ、特殊なユースケースに対応できるよう設計されています。デフォルトの推奨ストレージエンジンは InnoDB です。InnoDB は、汎用的なトランザクションリレーショナルデータベースエンジンであり、原子性、一貫性、独立性、耐久性 (ACID) モデルに準拠しています。また、インメモリ構造 (バッファプール、変更バッファ、アダプティブハッシュインデックス、ログバッファ) とオンディスク構造 (テーブルスペース、テーブル、インデックス、UNDO ログ、REDO ログ、二重書き込みバッファファイル) を特徴としています。データベースを ACID モデルに厳密に準拠させるために、InnoDB ストレージエンジンには、トランザクション、コミット、ロールバック、クラッシュリカバリ、行レベルのロック、マルチバージョン同時実行制御 (MVCC) といった多数の機能が実装されています

DB インスタンスのこうしたすべての内部コンポーネントが連携して動作することで、データの可用性、整合性、セキュリティが想定どおりのパフォーマンスレベルで維持されます。ワークロードによっては、各コンポーネントと機能が、CPU、メモリ、ネットワーク、ストレージサブシステムなどのリソースに負荷をかける場合があります。特定のリソース需要が急増し、プロビジョニングした容量や、そのリソース (設定パラメータまたはソフトウェア設計によって要求される) のソフトウェア制限を超えると、DB インスタンスのパフォーマンスが低下したり、完全に利用できない、あるいは破損という状態になったりする可能性があります。したがって、これらの内部コンポーネントを測定およびモニタリングして、定義済みのベースライン値と比較し、モニタリングした値が期待値から逸脱した場合にアラートを生成することがきわめて重要です。

前述のように、さまざまなツールを使用して、MySQL インスタンスと MariaDB インスタンスをモニタリングできます。モニタリングとアラートには Amazon RDS Performance Insights と CloudWatch のツールを使用すると良いでしょう。なぜなら、これらを Amazon RDS と連携させると、高解像度のメトリクスを収集して、最新のパフォーマンス情報をほぼリアルタイムで取得し、アラームを生成できるからです。

どのモニタリングツールを選択するかに関係なく、MySQL と MariaDB DB のインスタンスでは、パフォーマンススキーマを有効にすることをお勧めします。パフォーマンススキーマは、MySQL サーバー (DB インスタンス) のオペレーションを低レベルでモニタリングするオプション機能であり、データベース全体のパフォーマンスへの影響を最小化できるように設計されています。この機能を管理するには、performance_schema パラメータを使用します。このパラメータはオプションですが、SQL ごとの高解像度 (1 秒) メトリクス、アクティブセッションのメトリクス、待機イベント、その他の詳細な低レベルモニタリング情報を Amazon RDS Performance Insights で収集する場合は、これを使用する必要があります。

セクション