563 Views
March 07, 25
スライド概要
#68 JAWS-UG 主催 週刊 AWS キャッチアップ(2025/2/24 週) 2025/3/7
Qiita や Zenn でいろいろ書いてます。 https://qiita.com/hmatsu47 https://zenn.dev/hmatsu47 MySQL 8.0 の薄い本 : https://github.com/hmatsu47/mysql80_no_usui_hon Aurora MySQL v1 → v3 移行計画 : https://zenn.dev/hmatsu47/books/aurora-mysql3-plan-book https://speakerdeck.com/hmatsu47
CloudWatch Database Insights 関連アップデート #68 JAWS-UG 主催 週刊 AWS キャッチアップ (2025/2/24 週) 2025/3/7 まつひさ(hmatsu47)
自己紹介 松久裕保(@hmatsu47) ● https://qiita.com/hmatsu47 ● Web インフラのお守り係をしています ● 普段は JAWS-UG 名古屋(・浜松)で DB ネタを中心 に話しています(主に RDS / Aurora・たまに DynamoDB) ● JAWS DAYS 2025 参加(3/1)→茨城遠征(3/15)が決定しました ● 山梨(4/4)は検討中 ● 去年の JAWS DAYS では山形遠征が決定→その後東北各地へ 2
CloudWatch Database Insights 関連アップデート ● RDS データベースのサポートを追加(2/24) ○ https://aws.amazon.com/jp/about-aws/whats-new/2025/02/cloudwatch-da tabase-insights-rds-databases/ ● RDS for MySQL / RDS for MariaDB のオンデマンド分析 を提供(2/28) ○ https://aws.amazon.com/jp/about-aws/whats-new/2025/02/database-insig hts-on-demand-analysis-rds-mysql-rds-mariadb/ 3
CloudWatch Database Insights おさらい ● ダッシュボードでリージョン内 DB を一括モニタリング ○ re:Invent 2024 で発表 ○ ダッシュボードにメトリクス・グラフなどを集約 ○ スタンダードモード・アドバンストモードの 2 種類がある ○ アドバンストモードにはパフォーマンス分析機能がある ■ パフォーマンスが低い・問題が生じているインスタンスの発見に便利 ■ 当初は Aurora(MySQL / PostgreSQL)のみが対象 4
2/24 のアップデート ● Aurora に加えて RDS をサポート ○ RDS for XXX ○ パフォーマンス分析機能は RDS for PostgreSQL のみ提供 ■ https://dev.classmethod.jp/articles/database-insights-rds-databases/ 5
2/28 のアップデート ● RDS for MySQL と RDS for MariaDB でパフォーマンス 分析機能をサポート 6
確認してみた(DB 作成) ● RDS データベース作成時のモニタリング設定 ○ db.t3.small / db.t4g.small 以下はスタンダードモードのみ対応 ■ 同じメモリ 2GiB でも db.c6gd.medium はアドバンストモードに対応 (db.c6gd:MySQL マルチ AZ DB クラスター向け) 7
確認してみた(DB 作成) ● 今回は db.t4g.medium でアドバンストモードを選択 8
確認してみた(ダッシュボード) 9
10
確認してみた(パフォーマンス分析) ● MySQL にダンプをロード→問題なしの判定 11
12
確認してみた(パフォーマンス分析) ● ちょっと重めの SELECT(AAS 余裕あり)→分析もなし 13
確認してみた(パフォーマンス分析) ● MariaDB に mysqlslap で高すぎる負荷を掛けたケース 14
確認してみた(パフォーマンス分析) ● MariaDB に mysqlslap で高すぎる負荷を掛けたケース ○ 平均アクティブセッション(AAS)が突き抜けた 15
確認してみた(パフォーマンス分析) ● MariaDB に mysqlslap で高すぎる負荷を掛けたケース 16
確認してみた(パフォーマンス分析) ● mysqlslap で高すぎる負荷を掛けたケース 17
確認してみた(パフォーマンス分析) ● インデックス使用・不使用 SELECT を交互・並列実行 ○ 上がインデックスなし、下がインデックスあり 18
確認してみた(パフォーマンス分析) ● インデックス使用・不使用 SELECT を交互・並列実行 ○ 3 並列で実行 ● 19
確認してみた(パフォーマンス分析) ● インデックス使用・不使用 SELECT を交互・並列実行 ○ インデックス作成についてのレコメンドなし 20
注意点 ● 5 分未満(以下?)の期間のパフォーマンス分析は不可 ○ 5 分ちょうどを指定して分析→分析が始まらないことがある? ● ロック分析は Aurora PostgreSQL のみサポート ● SQL 実行プラン分析は Aurora PostgreSQL および RDS for Oracle / RDS for SQL Server のみサポート →いずれもパフォーマンス分析とは別の機能 https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Database-Insights.html 21
まとめ ● CloudWatch Database Insights がアップデートされた ○ RDS データベースをサポート ○ RDS for MySQL / MariaDB のオンデマンド分析をサポート ● アドバンストモードで利用できる機能は対象のデータ ベースの種類によって異なる ○ パフォーマンス分析・ロック分析・SQL 実行プラン分析 22