Прежде всего, спасибо за вашу помощь!
Я хочу узнать, какие таблицы в базе данных используются наиболее активно, то есть количество пользователей, которые запрашивают таблицу, количество раз, когда она запрашивалась, ресурсы, которые потреблялись пользователями для каждой таблицы, общее время, в течение которого таблицы запрашивались , и любые другие полезные данные. А пока я бы ограничился анализом 9 конкретными таблицами. Я пробовал использовать stl_scan и pg_user, используя следующие два запроса:
SELECT
s.perm_table_name AS table_name,
count(*) AS qty_query,
count(DISTINCT s.userid) AS qty_users
FROM stl_scan s
JOIN pg_user b
ON s.userid = b.usesysid
JOIN temp_mone_tables tmt
ON tmt.table_id = s.tbl AND tmt.table = s.perm_table_name
WHERE s.userid > 1
GROUP BY 1
ORDER BY 1;
SELECT
b.usename AS user_name,
count(*) AS qty_scans,
count(DISTINCT s.tbl) AS qty_tables,
count(DISTINCT trunc(starttime)) AS qty_days
FROM stl_scan s
JOIN pg_user b
ON s.userid = b.usesysid
JOIN temp_mone_tables tmt
ON tmt.table_id = s.tbl AND tmt.table = s.perm_table_name
WHERE s.userid > 1
GROUP BY 1
ORDER BY 1;
temp_mone_tables - это темпоральная таблица, которая содержит идентификатор и имя интересующих меня таблиц.
С помощью этих запросов я могу получить некоторую информацию, но мне нужны более подробные сведения. Удивительно, но в Интернете не так много данных о такой статистике.
Еще раз всем заранее спасибо!