Данный документ описывает основные компоненты и функции расширения matrixmgr.
Расширение matrixmgr YMatrix для сбора статистики запросов. После инициализации кластера YMatrix система автоматически создает базу данных matrixmgr и устанавливает расширение matrixmgr. После успешного развертывания в базе данных matrixmgr в схеме matrixmgr_internal появляются следующие представления и таблицы:
| Представление | Описание |
|---|---|
| mxstat_execute | Данное представление предоставляет детали выполнения SQL-запросов, включая сегментные экземпляры, на которых выполнялись запросы, информацию о пользователе, текст запроса, минимальное и максимальное время выполнения, а также временные метки для каждой фазы самого медленного запроса. Вы можете использовать это представление для анализа продолжительности выполнения различных SQL-запросов и исследования производительности самых медленных запросов |
| mxstat_usage | Данное представление предоставляет метрики потребления ресурсов во время выполнения SQL-запросов |
| mx_query_execute_history | Исторические данные, собранные из представления mxstat_execute |
| mx_query_usage_history | Исторические данные, собранные из представления mxstat_usage |
| mx_querytext | Данное представление хранит сопоставление между queryid и querytext. Вы можете использовать это сопоставление для извлечения текста SQL-запросов |
| mx_query_execute_history_with_text | Объединенное представление, объединяющее mx_query_execute_history и mx_querytext посредством queryid |
Подключитесь к базе данных matrixmgr, чтобы получить доступ к следующим представлениям:
Данное представление отображает статистику запросов, собранную за последние 5 минут.
| Столбец | Тип | Описание |
|---|---|---|
| seg | integer | Идентификатор сегментного экземпляра, на котором был сгенерирован и отправлен план запроса |
| userid | oid | OID пользователя |
| dbid | oid | OID базы данных |
| queryid | bigint | Идентификатор запроса, сгенерированный расширением для группировки похожих запросов |
| nestlevel | integer | Уровень вложенности |
| query | text | Текст запроса |
| calls_begin | bigint | Количество запусков запроса |
| calls_alive | bigint | Количество запросов, которые все еще выполнялись на момент последнего сбора статистики |
| calls_end | bigint | Количество запросов, завершившихся нормально |
| total_time | double precision | Общее время выполнения запросов данного класса, в миллисекундах |
| min_time | double precision | Минимальное время выполнения запросов данного класса, в миллисекундах |
| max_time | double precision | Максимальное время выполнения запросов данного класса, в миллисекундах |
| mean_time | double precision | Среднее время выполнения запросов данного класса, в миллисекундах |
| stddev_time | double precision | Стандартное отклонение времени выполнения запросов данного класса, в миллисекундах |
| sample_planid | bigint | Идентификатор плана выполнения |
| sample_start | timestamp with time zone | Временная метка начала самого медленного запроса |
| sample_parse_done | timestamp with time zone | Временная метка завершения парсинга самого медленного запроса |
| sample_plan_done | timestamp with time zone | Временная метка завершения планирования самого медленного запроса |
| sample_exec_start | timestamp with time zone | Временная метка начала выполнения самого медленного запроса |
| sample_exec_end | timestamp with time zone | Временная метка завершения выполнения самого медленного запроса |
Данное представление отображает статистику потребления ресурсов для запросов за последние 5 минут.
| Столбец | Тип | Описание |
|---|---|---|
| seg | integer | Идентификатор узла сегмента, на котором выполнялся запрос |
| userid | oid | OID пользователя |
| dbid | oid | OID базы данных |
| queryid | bigint | Идентификатор запроса, сгенерированный расширением для группировки похожих запросов |
| nestlevel | integer | Уровень вложенности |
| rows | bigint | Общее количество строк, извлеченных или затронутых оператором |
| shared_blks_hit | bigint | Общее количество попаданий в общий буфер оператором |
| shared_blks_read | bigint | Общее количество чтений общих блоков оператором |
| shared_blks_dirtied | bigint | Общее количество загрязненных общих блоков оператором |
| shared_blks_written | bigint | Общее количество записей в общие блоки оператором |
| local_blks_hit | bigint | Общее количество попаданий в локальный буфер оператором |
| local_blks_read | bigint | Общее количество чтений локальных блоков оператором |
| local_blks_dirtied | bigint | Общее количество загрязненных локальных блоков оператором |
| local_blks_written | bigint | Общее количество записей в локальные блоки оператором |
| temp_blks_read | bigint | Общее количество чтений временных блоков оператором |
| temp_blks_written | bigint | Общее количество записей во временные блоки оператором |
| blk_read_time | double precision | Общее время, затраченное на чтение блоков, в миллисекундах |
| blk_write_time | double precision | Общее время, затраченное на запись блоков, в миллисекундах |
| ru_utime | double precision | Время процессора пользователя, в секундах |
| ru_stime | double precision | Время процессора системы, в секундах |
| ru_maxrss | bigint | Физическая память, использованная процессом (включая общие библиотеки), в КБ |
| ru_ixrss | bigint | Общий объем разделяемой памяти |
| ru_idrss | bigint | Общий объем неразделяемой данных |
| ru_isrss | bigint | Общий объем неразделяемого стека |
| ru_minflt | bigint | Количество незначительных ошибок страниц (обрабатываемых без ввода-вывода) |
| ru_majflt | bigint | Количество значительных ошибок страниц (обрабатываемых с вводом-выводом) |
| ru_nswap | bigint | Количество операций свопинга |
| ru_inblock | bigint | Количество операций ввода, инициированных файловой системой |
| ru_oublock | bigint | Количество операций вывода, инициированных файловой системой |
| ru_msgsnd | bigint | Количество отправленных сообщений |
| ru_msgrcv | bigint | Количество полученных сообщений |
| ru_nsignals | bigint | Количество полученных сигналов |
| ru_nvcsw | bigint | Количество добровольных переключений контекста (процесс передает процессор) |
| ru_nivcsw | bigint | Количество недобровольных переключений контекста (из-за истечения кванта времени или вытеснения процессами более высокого приоритета) |
mxstat_execute с интервалом по умолчанию 5 минут. Его структура соответствует представлению mxstat_execute, с дополнительным столбцом ts_bucket, фиксирующим временную метку сбора данных.mxstat_usage с интервалом по умолчанию 5 минут. Его структура соответствует представлению mxstat_usage, с дополнительным столбцом ts_bucket, фиксирующим временную метку сбора данных.queryid и querytext. Как и другие таблицы исторических данных, он периодически сохраняет данные, чтобы исторические запросы можно было связать с их текстом SQL.mx_query_execute_history и mx_querytext по queryid, позволяющее одновременно получать доступ к исторической статистике запросов и соответствующему тексту SQL.