最近、ようやく[改定新版]内部構造から学ぶPostgreSQLを読み終えた。
[改訂新版]内部構造から学ぶPostgreSQL 設計・運用計画の鉄則 (Software Design plus)
- 作者: 勝俣智成,佐伯昌樹,原田登志
- 出版社/メーカー: 技術評論社
- 発売日: 2018/09/14
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
いわずもがな、めっちゃいい本だと思います!この本はSQLの書き方とかは全く載っていなくて、設計・運用のノウハウがめっちゃ詰まっています。レプリケーションやパフォーマンスチューニング、Explainの見方や、ここ最近加わった機能の紹介などが載っています。
PostgreSQLは9.6からパラレルクエリが使えるようになっていて、並列で問い合わせの処理が行えるようになりました。その説明や、実際にどれくらい速くなるかの実験結果も載っていました。それによると、4CPUで4並列でクエリを処理した結果、速度はおおよそ3倍速くなっていました。4並列で処理するといっても、その分割処理などが入るため、素直に4倍速くなるわけではありません。
私が担当しているプロジェクトや、チーム内の他のプロジェクトでもPostgreSQLを使っているので、この情報は社内のチャットでも情報共有しておきました。また、担当プロジェクトで現在利用しているPostgreSQLのバージョンは、まだ9.5のため、パラレルクエリが使えません。
実際に変更したら速くなるのか?を調査するにしても、利用環境のCPUの数がシングルコアだとバージョンアップでの高速化はそこまで見込めないのかな?と思ったので、とりあえず調べたところ、HerokuのPostgreSQLのCPUコア数が公開されてました。
standard-0以上であれば、vCPUは2以上あるので、パラレルクエリでの高速化は見込めそうかなと思います。
PostgreSQLのバージョンアップだけで高速化が期待できるのは嬉しい! 引き続き検証してバージョンアップをしていく次第。
また結果とかも書いていこうかなと思います。