system.scheduler
Выполнение запросов в ClickHouse Cloud
Данные в этой системной таблице хранятся локально на каждом узле в ClickHouse Cloud. Поэтому для получения полного обзора всех данных требуется функция clusterAllReplicas. Подробности см. здесь.
Описание
Содержит сведения об узлах планировщика на локальном сервере и их состоянии. Эту таблицу можно использовать для мониторинга. Таблица содержит по одной строке на каждый узел планировщика.
Столбцы
resource(String) — Имя ресурсаpath(String) — Путь к узлу планировщика в иерархии планирования этого ресурсаtype(String) — Тип узла планировщика.weight(Float64) — Вес узла, используемый родительским узлом типаfair.priority(Int64) — Приоритет узла, используемый родительским узлом типаpriority(меньшее значение означает более высокий приоритет).is_active(UInt8) — Активен ли этот узел в данный момент — есть ли у него запросы на ресурсы для извлечения из очереди и удовлетворены ли ограничения.active_children(UInt64) — Количество дочерних узлов в активном состоянии.dequeued_requests(UInt64) — Общее количество запросов на ресурсы, извлеченных из очереди этого узла.canceled_requests(UInt64) — Общее количество запросов на ресурсы, отмененных в этом узле.dequeued_cost(Int64) — Сумма стоимостей (например, размер в байтах) всех запросов, извлеченных из очереди этого узла.throughput(Float64) — Текущая средняя пропускная способность (стоимость извлеченных из очереди запросов в секунду).canceled_cost(Int64) — Сумма стоимостей (например, размер в байтах) всех запросов, отмененных в этом узле.busy_periods(UInt64) — Общее количество деактиваций этого узла.vruntime(Nullable(Float64)) — Только для дочерних узловfair. Виртуальное время выполнения узла, используемое алгоритмом SFQ для выбора следующего дочернего узла для обработки по принципу max-min fairness.system_vruntime(Nullable(Float64)) — Только для узловfair. Виртуальное время выполнения, показывающееvruntimeпоследнего обработанного запроса на ресурс. Используется при активации дочернего узла как новое значениеvruntime.queue_length(Nullable(UInt64)) — Только для узловfifo. Текущее количество запросов на ресурсы в очереди.queue_cost(Nullable(Int64)) — Только для узлов fifo. Сумма стоимостей (например, размер в байтах) всех запросов, находящихся в очереди.budget(Nullable(Int64)) — Только для узлов fifo. Количество доступных «единиц стоимости» для новых запросов на ресурсы. Может появляться в случае расхождения между оценочной и фактической стоимостью запросов на ресурсы (например, после сбоя чтения/записи)is_satisfied(Nullable(UInt8)) — Только для узлов ограничений (например,inflight_limit). Равно1, если все ограничения этого узла соблюдены.inflight_requests(Nullable(Int64)) — Только для узловinflight_limit. Количество запросов на ресурсы, извлеченных из очереди этого узла и находящихся в данный момент в состоянии потребления.inflight_cost(Nullable(Int64)) — Только для узловinflight_limit. Сумма стоимостей (например, в байтах) всех запросов на ресурсы, извлеченных из очереди этого узла и находящихся в данный момент в состоянии потребления.max_requests(Nullable(Int64)) — Только для узловinflight_limit. Верхний предел для inflight_requests, приводящий к нарушению ограничения.max_cost(Nullable(Int64)) — Только для узловinflight_limit. Верхний предел для inflight_cost, приводящий к нарушению ограничения.max_speed(Nullable(Float64)) — Только для узловbandwidth_limit. Верхний предел пропускной способности в токенах в секунду.max_burst(Nullable(Float64)) — Только для узловbandwidth_limit. Верхний предел числа токенов, доступных в token-bucket throttler.throttling_us(Nullable(Int64)) — Только для узловbandwidth_limit. Общее количество микросекунд, в течение которых этот узел находился в состоянии throttling.tokens(Nullable(Float64)) — Только для узловbandwidth_limit. Количество токенов, доступных в данный момент в token-bucket throttler.
Пример: