Обзор Trino UI
Сервис Trino имеет веб-интерфейс, позволяющий просматривать запросы к базам данных, расположенным в кластере Trino, и управлять их исполнением.
Ссылку на веб-интерфейс Trino можно найти на вкладке Info сервиса Trino в веб-интерфейсе ADCM.

Cluster overview
Начальной страницей веб-интерфейса Trino является страница Cluster overview. В её верхней части расположена следующая информация:
-
Version — название версии установленного дистрибутива Trino.
-
Environment — название окружения, в котором работает данный кластер Trino.
-
Uptime — время непрерывной работы компонента Trino Coordinator.
-
Log out — кнопка, позволяющая выйти из веб-интерфейса.
Под этой информацией расположена панель мониторинга.

Назначение элементов панели мониторинга:
-
Running queries — количество запросов, находящихся в работе в текущий момент.
-
Active workers — количество активных компонентов Trino Worker.
-
Rows/sec — количество строк таблиц, обрабатываемых в секунду на текущий момент.
-
Queued queries — количество запросов, находящихся в очереди.
-
Runnable drivers — количество работоспособных драйверов на текущий момент.
-
Bytes/sec — размер данных, обрабатываемых в секунду на текущий момент.
-
Blocked queries — количество заблокированных запросов.
-
Reserved memory — размер памяти виртуальной машины Java, используемой в Trino, зарезервированной для исполняемых в настоящий момент запросов.
-
Worker parallelism — мера эффективности использования нескольких компонентов Trino Worker на текущий момент.
Под панелью мониторинга расположена секция Query details. В ней отображаются статистические данные всех типов запросов. Также здесь можно искать запросы, сортировать и фильтровать список запросов по различным критериям.

В поле ввода можно искать запросы по следующим параметрам:
-
имя пользователя, запустившего запрос;
-
источник запроса;
-
идентификатор запроса;
-
состояние запроса;
-
группа ресурсов запроса;
-
название ошибки, с которой завершился запрос;
-
текст запроса.
Справа от поля поиска расположены инструменты фильтрации и сортировки. Для просмотра выполняемых, находящихся в очереди или успешно выполненных запросов нажмите кнопки-переключатели Running, Queued или Finished соответственно. Выпадающий список Failed объединяет переключатели для отображения запросов, которые завершились неудачей по разным причинам: внутренняя ошибка (Internal error), внешняя ошибка (External error), ошибка ресурсов (Resources error) или ошибка пользователя (User error). С помощью выпадающего списка Show можно задать количество запросов для отображения. Значения из выпадающего списка Sort позволяют сортировать список запросов по различным параметрам. С помощью списка Reorder interval можно установить частоту обновления списка или отключить обновление.
Под вышеописанной частью начинается список запросов. Каждая запись о запросе показывает его основную информацию.

Заголовок в верхней левой части содержит следующую информацию:
1 | Query ID — идентификатор запроса. Нажатие на него открывает вкладку Overview страницы Query details. |
2 | Иконки Query JSON, Stage performance, Query plan, и References — нажатие на них равнозначно нажатию на вкладки с такими же названиями на странице Query details. |
3 | Submit time — время, когда запрос был отправлен на исполнение. |
Под заголовком собрана следующая информация:
-
имя пользователя, запустившего запрос;
-
источник запроса;
-
кодировка протокола;
-
группа ресурсов запроса;
-
количество выполненных, выполняемых и находящихся в очереди запросов;
-
реальное время исполнения запроса за вычетом времени нахождения в очереди;
-
полное реальное время исполнения запроса;
-
процессорное время исполнения запроса;
-
полный объем зарезервированной памяти на текущий момент;
-
пиковый полный объем зарезервированной памяти;
-
кумулятивная пользовательская память.
В правой части записи о запросе можно увидеть статус хода выполнения запроса или его итог в зависимости от того, исполняется ли этот запрос или уже завершен. Также здесь приведен текст запроса (или его начало).
Query details
Страницу Query details можно открыть, нажав на идентификатор запроса на странице Cluster overview. Она содержит несколько вкладок, описанных ниже.
Overview
Вкладка Overview содержит общую информацию о запросе.

Здесь можно прервать или завершить исполнение запроса с помощью кнопок Preempt и Kill соответственно, если он ещё исполняется. Также здесь собрана подробная информация о следующих характеристиках запроса:
-
Session — пользователь, источник, расположение и другое.
-
Execution — различные тайминги запроса.
-
Resource utilization summary — статистика использования ресурсов при исполнении запроса.
-
Timeline — статистика метрик исполнения запроса с точки зрения таймлайна.
-
Error information — тип и код ошибки, а также листинг трассировки стека.
Внизу этой вкладки также расположен полный текст запроса и список стадий выполнения запроса с подробностями.
Live plan
На вкладке Live plan расположена схема исполнения запроса по стадиям с подробной информацией о каждой стадии: статус выполнения, использование ресурсов, обработанные выражения и направление дальнейшей обработки запроса. Схему можно приближать и отдалять с помощью колеса мыши, а также двигать с помощью зажатой левой кнопки. Нажатие на одну из стадий в схеме откроет вкладку Stage performance, где будет выбрана эта стадия.

Stage performance
На вкладке Stage performance показана дальнейшая детализация выбранной стадии исполнения запроса. Стадию для просмотра можно выбрать в правом верхнем углу экрана (список Select stage).

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