2019.01.29
STAFF BLOG
スタッフブログ
TECHNICAL
テクログ
AWSのAurora、使ってますか?
SQLのクエリチューニング、してますか??
弊社も常々WEBサイトのページ表示速度とは戦い続けていて、
日々クエリチューニングをしています。
そんなある日、スロークエリログにて重たいクエリを発見したので
早速EXPLAINなどを使って確認しようとしたところ、
1回目は激重だったのに
2回目からは爆速で返ってきて
「???」となりました。
キャッシュだろうと思い「RESET QUERY CACHE」を打って
その後何回も実行してみましたが、結果は常に爆速。
一体1回目の実施は何だったの?まさか…
と思い確認したところ、
Auroraではバッファプールキャッシュや
ページキャッシュといったキャッシュが使われ
これらのキャッシュはDB再起動しても消えないし
すべてのキャッシュを削除しても消えないとのことでした。
つまり、初回時の速度を再現したいのであれば
DBインスタンスを新しく作成して実効するしかな、とのことです。
詳しくはこちらの「存続できるキャッシュのウォームアップ」あたりをご覧ください。