Hibariya

内部構造から学ぶPostgreSQL 設計・運用計画の鉄則 を読んだ

RubyWorld Conference 2015 のレセプションで @yancya さんと話したときにおすすめいただいたもの。 この本を読んだおかげで、数ヶ月手をつけられていなかった不具合の調査が捗った。

各種プロセスや設定ファイルの役割からパフォーマンスチューニング方法まで、PostgreSQL の特徴や機能を有効に活用するための方法が解説されている。 何が書いてあるかについては章の構成を見た方が早そうだ。

  1. PostgreSQL "超" 入門
  2. アーキテクチャーの基本
  3. 各種設定ファイルと基本設定
  4. 処理/制御の基本
  5. テーブル設計
  6. 物理設計
  7. バックアップ計画
  8. 監視計画
  9. サーバ設定
  10. 高可用化と負荷分散
  11. オンライン物理バックアップ
  12. 死活監視と正常動作の監視
  13. テーブルメンテナンス
  14. インデックスメンテナンス
  15. 実行計画の取得/解析
  16. パフォーマンスチューニング

全体を通して主に PostgreSQL の動作とそれに影響する設定項目について分かりやすく説明されていた印象だった。問題の原因をつきとめて対策するための実践的な情報が得られたと思う。例えば、データが書き込まれるまでの流れやその動作を変えるための設定について書かれていて、"どういうときに大量の I/O が発生するのか" とか "どうやってそれを確認すればいいのか" を知ることができた。

タイトルからなんとなく RHG みたいなものをイメージしていたけど、ソースコードの解説は出てこない。