Перейти к основному содержанию
Перейти к основному содержанию

system.scheduler

Querying in ClickHouse Cloud

The data in this system table is held locally on each node in ClickHouse Cloud. Obtaining a complete view of all data, therefore, requires the clusterAllReplicas function. See here for further details.

Содержит сведения об узлах планировщика, находящихся на локальном сервере, и их состоянии. Эту таблицу можно использовать для мониторинга. Таблица содержит по одной строке для каждого узла планировщика.

Пример:

SELECT *
FROM system.scheduler
WHERE resource = 'network_read' AND path = '/prio/fair/prod'
FORMAT Vertical
Row 1:
──────
resource:          network_read
path:              /prio/fair/prod
type:              fifo
weight:            5
priority:          0
is_active:         0
active_children:   0
dequeued_requests: 67
canceled_requests: 0
dequeued_cost:     4692272
canceled_cost:     0
busy_periods:      63
vruntime:          938454.1999999989
system_vruntime:   ᴺᵁᴸᴸ
queue_length:      0
queue_cost:        0
budget:            -60524
is_satisfied:      ᴺᵁᴸᴸ
inflight_requests: ᴺᵁᴸᴸ
inflight_cost:     ᴺᵁᴸᴸ
max_requests:      ᴺᵁᴸᴸ
max_cost:          ᴺᵁᴸᴸ
max_speed:         ᴺᵁᴸᴸ
max_burst:         ᴺᵁᴸᴸ
throttling_us:     ᴺᵁᴸᴸ
tokens:            ᴺᵁᴸᴸ

Столбцы:

  • 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-справедливостью.
  • 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.
  • throttling_us (Nullable(Int64)) — Только для узлов bandwidth_limit. Общее число микросекунд, в течение которых этот узел находился в состоянии ограничения пропускной способности (throttling).
  • tokens (Nullable(Float64)) — только для узлов bandwidth_limit. Количество токенов, доступных в данный момент в ограничителе скорости (token bucket).