2022-09-19 You are Overpaying Jeff Bezos for Your Databases You are Overpaying Jeff Bezos for Your Databases (and the things he does with that extra money) - OtterTune 概要 RDSユーザは必要以上に支払っている。無駄金を払うパターンが3つある 1.必要以上に高性能なインスタンスを使っている PostgreSQL RDSでTPC-Cベンチマークを実行した。8xlarge以上のインスタンスにスケールアップしてもスループットは変わらなかった 2.デフォルトの設定のまま使う TPC-Cを走らせると、デフォルト設定の2xlargeインスタンスは、デフォルト設定の4xlargeの半分のスループットだったが、OtterTuneでチューニングすると4xlargeを超えた OtterTuneは4xlargeより安いですよ 3.必要以上のProvisioned IOPSを買う 適切なPIOPSを見極めるのは難しい read中心のアプリなら、ディスクI/O量はデータがメモリに乗り切るかどうかに依存する writeヘヴィなアプリは、I/Oの予測がさらに難しい。DBMSにはwriteする内部コンポーネントがたくさんあるから(WALとかautovacuumとか) 難しいからとりあえずPIOPSを増やしておく、というアプローチが一般的だが、PIOPSを増やしてもスループットが増えないポイントが、それぞれのアプリケーションには存在する 結論、RDSを適切な設定で運用するのは大変な価値がある。OtterTuneはそのお手伝いをします