はじめに
クラウドインテグレーション事業部の言上です。
AWS Summit Japan 2025に参加し、セッションを聞いてきました。
その中で、開発者向けのライブステージとして、とても興味深いセッションがありましたので、自身の振り返りもかねて、ブログでご紹介します。
セッションの内容
「あれ?データベースが重い??今から DB 分析してリアルタイムチューニングしよう」というタイトルにて、DBチューニングについてのお話でした。
本セッションでは、アプリケーションで実際に参照クエリがタイムアウトするところから、どうやって直していくかのデモがありました。
DBの困りごととして、なんか処理が重い、ということはあるが、どうやったら解消するか?というところを突き止めるのが大変だ。
それはクラウドになっても変わらない部分である、というのがあったのち、DBの分析手法についての紹介がありました。
AWSではAmazon Cloudwatch Database Insights(以降Database Insights)という機能があり、そちらを利用して分析を進める手法の紹介がありました。
(RDSのPerformance Insightsと似た機能ですが、Performance Insightsは2025/11/30に廃止され、本機能へ統合されます。)
Database InsightsはデータベースロードのAverage Active Sessions(AAS)と呼ばれる指標があります。
こちらは、Performance Insightsでも同様の指標がありましたが、本セッションではその見方を細かくわかりやすい説明があり、とても勉強になりました。
Database Insightsの中でも特に強力だと感じたのは、実行プランの表示です。
DBでは、クエリを実行するときに、どうやって実行するかを示すことができます。
Performance Insightsではこの機能はなかった(この認識ですが、誤っていたらごめんなさい)ため、Performance Insightsを利用して、どのクエリが悪さしているかはあたりがつきました。
じゃあどうやって解消しようか?誰が実行プランをどうやって取ってこよう?となり、困るケースがありました。
Database Insightsでは、この実行プランを利用することで、クエリがどのように実行されたか、遅いのであれば何が原因となり得るかが深掘りできるようになります。
ただ、この実行プラン、私もDBAではないので、一から読みましょう、となったときにかなり苦戦しそうです。
そこで登場したのがAIサービスです。
このセッションでは、ここで出力された情報を「Amazon Q」に読み込ませ、解決策を導くというデモを実施されました。
Amazon Qは実行プランを読み込み、クエリのシーケンシャル処理に時間がかかっている、Indexを追加してはどうか?という提案を出します。
そちらの対処を行い、見事解消したところまでがデモの見どころでした。
本セッションはYoutube からも閲覧可能ですので、ご参照ください。
最後に
今までもPerformance Insightsで分析することはよくありましたが、Database Insightsにすることで、実行プランの分析まで出来るようになったことは大きな武器になり得ると感じました。
また、生成AIの分析についても、ハルシネーション等気をつけるところはありますが、あたりをつけるという作業においては非常に強力であり、これらを組み合わせて、より業務で活用できればと思います。