データベースのリアルタイム監視
データベースの性能問題は、アプリケーションの速度低下やサービス停止に直結し、エンドユーザー体験と売上に即座に影響します。WhaTap Database Monitoringでしきい値を超える運用状態をリアルタイムに監視し、 問題が発生した際には原因まで分析する流れをご案内します。
DB監視の設計時に確認する5つの項目
- 目標設定。クエリ応答時間の最大許容値、特定処理のスループットなど、「何を監視するか」を明確にします。
- 指標の選択。CPU・メモリ・ディスクI/O・ネットワーク・セッション状況・待機イベントなど。
- 周期の設定。DBの特性や負荷に合わせて一定に設定し、最新の状態が収集されるようにします。
- ツールの組み合わせ。DBMS内蔵、クラウドマネージド、サードパーティ。機能・拡張性・利便性で選択します。
- 改善の検証。モニタリング結果から問題を特定し、解決後に再度モニタリングして効果を確認します。
WhaTap DB監視の2つの軸
① 秒単位の可視化(5秒間隔)
DBが提供するほとんどのメトリクスを5秒間隔で収集・可視化します。
- オンプレミスDBとクラウドRDSを同じ画面で監視でき、DB監視の死角をなくします。
- しきい値を超えた場合はリアルタイムアラートで対応を促します。
- 複数のDBインスタンスを1つのプロジェクト・1つのダッシュボードで統合して観察できます。
② 問題の原因分析ツール
単純なメトリクス監視にとどまらず、「なぜ遅くなったのか」まで掘り下げる機能を内蔵しています。
表 | DB問題の原因分析ツール
| 機能 | 活用する場面 |
|---|---|
| アクティブセッション | 現在DBで動作中のセッションが何を待機しているかを確認する |
| Slow Query | 遅いクエリの一覧・実行計画・待機イベントを確認する |
| DBロック追跡 | ロックのholder・waiter関係やデッドロック状況を把握する |
| SQL詳細 | 遅延している個別SQLの実行内容・呼び出し箇所を確認する |
| SQL統計 | 時間帯別のクエリ頻度・平均応答の推移を確認する |
| DBログ | エラー・警告ログの原文を確認する |
| テーブル・DBサイズの増減 | テーブルサイズの変化を追跡する(キャパシティプランニング) |
| パラメータ比較 | 本番・ステージングDB間の設定差分を検出する |
観察シナリオの例
アプリケーションが突然遅くなった場合
- アプリケーションのトランザクショントレースでDB呼び出し区間が遅いかどうかを確認します。
- その時間帯のアクティブセッションで、占有しているセッションと待機イベントを把握します。
- Slow Queryで遅いクエリを見つけ、実行計画と待機イベントを確認します。
- DBロックの発生有無をあわせて確認します。
- アラート通知ルールと連携します。詳しい設定はDBメトリクスアラート通知設定をご参照ください。
デプロイ後のクエリ性能リ グレッションの検知
- SQL統計でデプロイ前後の主要クエリの平均応答時間を比較します。
- リグレッションしたクエリがある場合は、パラメータ比較で環境の変化を確認します。
- 必要に応じてリリース検証シナリオの1週間推移の検証フローと連携します。
キャパシティプランニング
- テーブル・DBサイズの増減で月単位の増加率を追跡します。
- 週次・月次の性能レポートに含めます。性能レポーティングシナリオと連携できます。
次のステップ
- 製品別のインストール・連携。PostgreSQL、Oracle、MySQL、SQL Server、Tibero
- DBアラート通知の設定 → DBメトリクスアラート通知設定
- 複数の製品をまとめて見る → Flexboardで製品の指標を組み合わせる
- 障害時の原因分析 → 障害対応シナリオ