FirebirdSQL logo

MON$IO_STATS

Статистика по вводу-выводу.

Table 1. Описание столбцов таблицы MON$IO_STATS
Наименование столбца Тип данных Описание

MON$STAT_ID

INTEGER

Идентификатор статистики.

MON$STAT_GROUP

SMALLINT

Группа статистики:

0 — база данных (database);
1 — соединение с базой данных (connection);
2 — транзакция (transaction);
3 — оператор (statement);
4 — вызов (call).

MON$PAGE_READS

BIGINT

Количество прочитанных (read) страниц базы данных.

MON$PAGE_WRITES

BIGINT

Количество записанных (write) страниц базы данных.

MON$PAGE_FETCHES

BIGINT

Количество загруженных в память (fetch) страниц базы данных.

MON$PAGE_MARKS

BIGINT

Количество отмеченных (mark) страниц базы данных.

Счётчики этой таблицы являются накопительными и накапливают информацию по каждой из групп статистики.

MON$MEMORY_USAGE

Статистика использования памяти.

Table 1. Описание столбцов таблицы MON$MEMORY_USAGE
Наименование столбца Тип данных Описание

MON$STAT_ID

INTEGER

Идентификатор статистики.

MON$STAT_GROUP

SMALLINT

Группа статистики:

0 — база данных (database);
1 — соединение с базой данных (connection);
2 — транзакция (transaction);
3 — оператор (statement);
4 — вызов (call).

MON$MEMORY_USED

BIGINT

Количество используемой памяти, байт.Информация о высокоуровневом распределении памяти, выполненной сервером из пулов.Может быть полезна для отслеживания утечек памяти и чрезмерного потребления памяти в соединениях, процедурах и т.д.

MON$MEMORY_ALLOCATED

BIGINT

Количество памяти, выделенной ОС, байт.Информация о низкоуровневом распределении памяти, выполненном менеджером памяти Firebird — объем памяти, выделенный операционной системой, что позволяет контролировать физическое потребление памяти.Обратите внимание, не все записи этого столбца имеют ненулевые значения.Малые выделения памяти здесь не фиксируются, а вместо этого добавляются к пулу памяти базы данных.Только MON$DATABASE (MON$STAT_GROUP = 0) и связанные с выделением памяти объекты имеют ненулевое значение.

MON$MAX_MEMORY_USED

BIGINT

Максимальное количество байт, используемое даннымобъектом.

MON$MAX_MEMORY_ALLOCATED

BIGINT

Максимальное количество байт, выделенное ОС данномуобъекту.

Note

Счётчики, связанные с записями уровня базы данных MON$DATABASE (MON$STAT_GROUP = 0), отображают выделение памяти для всех соединений.В архитектурах Classic и SuperClassic нулевые значения счётчиков обозначают, что в этих архитектурах нет общего кэша.

Example 1. Получение 10 запросов потребляющих наибольшее количество памяти
SELECT STMT.MON$ATTACHMENT_ID, STMT.MON$SQL_TEXT, MEM.MON$MEMORY_USED
FROM MON$MEMORY_USAGE MEM
   NATURAL JOIN MON$STATEMENTS STMT
ORDER BY MEM.MON$MEMORY_USED DESC
FETCH FIRST 10 ROWS ONLY