PostgreSQL. Список таблиц с очень частой записью на диск
// 5 Квітня, 2013 | 1037 переглядів | коментарів (0)
Предел возможностей БД часто упирается в дисковые операции. Поэтому стоит оптимизировать эти операции, меняя логику, архитектуру, масштабируя и пр.
Запрос выведет статистику по таблицам в обратном порядке по сумме операций записи, т.е. сверху будут таблицы с наиболее интенсивной записью.
SELECT
schemaname AS schema, -- схема
relname AS table, -- таблица
pg_size_pretty( pg_relation_size(relid) ) AS tsize, -- размер
n_tup_upd + n_tup_ins + n_tup_del AS write, -- операций записи (I/U/D)
seq_scan + idx_scan AS read, -- всего чтений
n_tup_ins AS ins, -- операции INSERT
n_tup_upd AS upd, -- операции UPDATE
n_tup_del AS del -- операции DELETE
FROM
pg_stat_user_tables
ORDER BY
( n_tup_upd + n_tup_ins + n_tup_del ) DESC
Кстати, так вы можете получить список всех индексов, а так — список неиспользуемых индексов.