PostgreSQL �� ANALYZE �̓������m�F����

�O�� VACUUM �̊m�F�ɂ‚��ď����܂����� ����� ANALYZE �̊m�F�ɂ‚��ď��������Ǝv���܂��B

�܂��̓e�[�u�� analyze_test ���쐬���܂��B

db=# CREATE TABLE analyze_test (f1 VARCHAR(10), f2 INTEGER);
CREATE TABLE

ANALYZE ������ pg_stat_all_tables ����擾�ł��܂��B

db=# SELECT * FROM pg_stat_all_tables
db-# WHERE relname = 'analyze_test';

-[ RECORD 1 ]----+------------------------------
relid            | 16469
schemaname       | public
relname          | analyze_test
seq_scan         | 2
seq_tup_read     | 9
idx_scan         |
idx_tup_fetch    |
n_tup_ins        | 5
n_tup_upd        | 1
n_tup_del        | 1
n_tup_hot_upd    | 1
n_live_tup       | 4
n_dead_tup       | 0
last_vacuum      |
last_autovacuum  |
last_analyze     |
last_autoanalyze |

ANALYZE ����O�͂��̂悤�ȏ�Ԃł��B

�܂��Apg_stat_all_tables �̑��� �񂲂Ƃ̓��v��� pg_stats �r���[����擾�ł��܂��B

db=# SELECT * FROM pg_stats WHERE tablename = 'analyze_test';
(No rows)

ANALYZE ����O�� ���R�[�h���擾�ł��܂���B

����ł� ANALYZE �����s���܂��B

db=# ANALYZE analyze_test;
ANALYZE

��Ԃ��m�F���܂��B

db=# SELECT * FROM pg_stat_all_tables
db-# WHERE relname = 'analyze_test';

-[ RECORD 1 ]----+------------------------------
relid            | 16469
schemaname       | public
relname          | analyze_test
seq_scan         | 2
seq_tup_read     | 9
idx_scan         |
idx_tup_fetch    |
n_tup_ins        | 5
n_tup_upd        | 1
n_tup_del        | 1
n_tup_hot_upd    | 1
n_live_tup       | 4
n_dead_tup       | 0
last_vacuum      |
last_autovacuum  |
last_analyze     | 2010-04-24 15:49:12.383112+09
last_autoanalyze |

last_analyze �� ANALYZE �����������i�[����܂����B

�񂲂Ƃ̓��v�����m�F���܂��B

db=# SELECT * from pg_stats WHERE tablename = 'analyze_test';

-[ RECORD 1 ]-----+--------------------------
schemaname        | public
tablename         | analyze_test
attname           | f1
null_frac         | 0
avg_width         | 6
n_distinct        | -1
most_common_vals  |
most_common_freqs |
histogram_bounds  | {00001,00003,00004,00005}
correlation       | -0.2
-[ RECORD 2 ]-----+--------------------------
schemaname        | public
tablename         | analyze_test
attname           | f2
null_frac         | 0
avg_width         | 4
n_distinct        | -1
most_common_vals  |
most_common_freqs |
histogram_bounds  | {15,30,40,50}
correlation       | -0.2

ANALYZE �����e�[�u���̗�̃��R�[�h���lj�����Ă��܂��B

histogram_bounds �ɗ�̒l�̃T���v���������Ă��܂��B
�i�s�����Ȃ��̂őS�Ă̒l�������Ă��܂��j

Google �T�C�g������

Amazon�A�\�V�G�C�g