QL-чарты. Обзор
QL-чарты — чарты, созданные на основе подключения, если источник подключения — БД, Prometheus или Monitoring. Для построения таких чартов используется прямой запрос в источник. В зависимости от типа чарта запрос выполняется на SQL-диалекте исходной БД, языке запросов Prometheus или Monitoring, что позволяет расширить возможности визуализации с помощью специфических операций.
При выполнении запроса отдельный объект Датасет не создается — чарт генерируется сразу и отображается на панели превью.
В отличие от чартов на основе датасета, в QL-чартах логика использования области визуализации смещена в сторону запроса в источник, то есть область визуализации только отображает данные из запроса.
Внимание
Если выдать пользователю доступ для просмотра вашего QL-чарта, он сможет выполнить любые запросы к любым данным источника этого QL-чарта.
Поддерживаются следующие типы QL-чартов:
-
SQL. Позволяют построить визуализацию, для которой можно гибко управлять набором данных с помощью параметров SQL-запроса в БД источника.
Особенности чартов типа SQL:
-
уменьшают нагрузку на БД благодаря прямым запросам;
-
подходят только для запросов
SELECT
; -
позволяют применять операторы
JOIN
,GROUP BY
,SORT BY
и функции агрегации в SQL-запросе; -
предоставляют возможность параметризации любой части SQL-запроса;
-
поддерживают ограниченный набор типов визуализаций;
-
не используют RLS и вычисляемые поля.
Пример запроса для БД ClickHouse®
SELECT Category, Month, ROUND(SUM(Sales)) FROM samples.SampleLite WHERE Category in {{category}} -- переменная, используемая в селекторе GROUP BY Category, Month -- группировка по категории и месяцу ORDER BY Category, Month -- сортировка по категории и месяцу
-
-
Prometheus. Позволяют построить график по данным Prometheus. Поверх этого источника не может быть построен датасет, работать с ним можно только с помощью QL-чартов.
Пример запроса для Prometheus
sum by (name) (rate(container_cpu_user_seconds_total{container_label_org_label_schema_group="monitoring"}[1m]) * 100 / scalar(count(node_cpu_seconds_total{mode="user"})))
-
Monitoring. Позволяют построить график по данным Yandex Monitoring. Поверх этого источника не может быть построен датасет, работать с ним можно только с помощью QL-чартов.
Пример запроса для Monitoring
{project="monitoring", sensor="nodejs.heap_space.size.bytes"}
Важно
Управление правами для QL-чартов по данным Monitoring и Prometheus выполняется не только на стороне DataLens, но и в самих сервисах Monitoring и Prometheus.
Для просмотра графика в DataLens пользователю необходимы права на чарт и подключение, а также на чтение данных из конкретного Prometheus API или проекта в Monitoring.
Чтобы создать QL-чарт, перейдите к инструкции.
См. также
ClickHouse® является зарегистрированным товарным знаком ClickHouse, Inc