excite techcon2023で登壇しました - RDS_performance_insightと実行計画 との付き合い方

エンジニアの @nukisashineko です。

社内カンファレンスの TechCon2023 に
20分枠の登壇側として参加させていただきました。

登壇内容としては下記スライドになります。

  • RDS_performance_insightと実行計画 との付き合い方 - DBとINDEXを学ぼう

ターゲット

想定ターゲットは下記のように定めました。

  • DBを知らない人
  • INDEX の作成/メンテをしたことがない人

そのため、なるべくわかりやすくを心がけました。

制約

RDS performance insight のスクショをいくつも使った上で、
外部公開可能な資料にすることに多少苦労し、本番DBのものを利用しています。

そのため今回の資料はベタが多く、
DB 構造や index 定義については省略させて頂いています。
ご了承ください。

発表内容の概要

ざっくりまとめると、下記のようなことを発表しました。

  • DB と INDEX とは
    • DB を我々が選ぶ理由として主な理由は下記の3つ
      • 優秀な transaction
      • IO の高速性
      • データに対する制約適用
    • DB と INDEX の関係
      • 理論の RDBMS を実用のために高速化
      • 制約や高速なIO、lock の実現を行う
  • INDEX の基礎〜応用
    • INDEX の基礎
      • create index ...
      • アンチパターン:ショットガンインデックスの誤解
      • インデックスのオーバーヘッドを正しく知る
    • 改善すべきクエリの見つけ方
      • RDS performance insight の使い方
    • 客観的なINDEXの評価方法
      • 実行計画の見方
      • 実行計画からの INDEX 作成方法
  • 実践
    • 実際の解決手順を追ってみよう

感想等

発表後の感想には、

  • DB 触ったこと無いけど興味深かった
  • RDS performance insight について興味を持った

と言ったものもあり、個人的にはターゲットに向けて届けられたかなと満足です。

また機会があれば、社内社外含めて登壇できたら嬉しいです。