В моем пакете Java я хотел бы собирать данные из pg_stat_user_tables
после каждого шага.
Например, я хочу собрать количество последовательных сканирований для каждой таблицы каждого шага из pg_stat_user_tables
.
Я попробовал этот алгоритм в Java:
call pg_stat_reset()
Step 1
collect pg_stat_user_tables (or pg_stat_xact_user_tables) for Step 1
call pg_stat_reset()
Step 2
collect pg_stat_user_tables (or pg_stat_xact_user_tables) for Step 2
...
call pg_stat_reset()
Step n
collect pg_stat_user_tables (or pg_stat_xact_user_tables) for Step n
Но собранные статистические данные из таблиц не являются единообразными и часто появляются на более поздних этапах, чем они должны (таблицы, отсканированные на шаге 2, отображаются в собранных данных с шага 3 или позже).
Содержат ли pg_stat_user_tables
и pg_stat_xact_user_tables
данные в реальном времени?
Я что-то не так делаю или невозможно собрать данные в реальном времени для каждого маленького шага?