2011年10月19~21日に開催された「INSIGHT OUT 2011」のセッション「PostgreSQLアーキテクチャ入門」の講演資料です。
「INSIGHT OUT 2011」の詳細については、以下を参照ください。
http://www.insight-tec.com/insight-out-2011.html
26. インデックスアクセス
SELECT * FROM customer c WHERE c.c_id=7;
Customer
テーブルからの
ブロック読込×1
Customer_pkey
インデックスの
ブロック読込×3
Copyright 2011 Uptime Technologies LLC, All rights reserved. 26
42. トランザクションログ領域の見積もり
• 最大容量は 16MB×(checkpoint_segments × 3 + 1)
– WALセグメントファイル(16MB)
– 各チェックポイント間の最大WALセグメント数(checkpoint_segments)
– WALを保持しているチェックポイント数(3)
Period B Period C Period D
(WAL Bを生成) (WAL Cを生成) (WAL Dを生成)
WAL A WAL B WAL C WAL Aを WAL D
再利用
WAL A WAL B WAL C
チェックポイント
WAL A/B/C/Dの最大サイズ WAL A WAL B
→16MB×checkpoint_segments
Copyright 2011 Uptime Technologies LLC, All rights reserved. 42
43. (参考)pgstattuple/pgstatindex
• テーブルとB-Treeインデックスの統計情報を表示するユーティリティ。
– contribモジュールとしてPostgreSQLソースに同梱
• 使い方
– cd ./contrib/pgstattuple ; make && make install
– CREATE EXTENSION pgstattuple;
http://www.postgresql.jp/document/9.1/html/pgstattuple.html
Copyright 2011 Uptime Technologies LLC, All rights reserved. 43
44. (参考)pageinspect
• ページブロックの内容や統計情報を表示するユーティリティ。
– contribモジュールとしてPostgreSQLソースに同梱
• 使い方
– cd ./contrib/pageinspect ; make && make install
– CREATE EXTENSION pageinspect;
http://www.postgresql.jp/document/9.1/html/pageinspect.html
Copyright 2011 Uptime Technologies LLC, All rights reserved. 44