Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex DataLens
    • Обзор
    • Кеширование
    • Объединение данных
      • Создание подключения к ClickHouse®
      • Создание подключения к PostgreSQL
      • Создание подключения к MySQL®
      • Создание подключения к YDB
        • Подключение
        • Особенности JOIN
        • Рекомендации
      • Создание подключения к Greenplum®
      • Создание подключения к SQL Server
      • Создание подключения к Oracle Database
      • Создание подключения к Prometheus
      • Создание подключения к Snowflake
  • Аудитные логи Audit Trails

В этой статье:

  • Разделение датасетов по подключениям
  • Создание быстрых дашбордов
  • Параметры кеширования и количество графиков на странице дашборда
  • Рекомендации от CHYT
  • Полезные ссылки
  1. Подключения
  2. Базы данных
  3. Создание подключения к YTsaurus CHYT
  4. Рекомендации

Рекомендации по созданию подключения к CHYT

Статья создана
Yandex Cloud
Обновлена 15 ноября 2024 г.
  • Разделение датасетов по подключениям
  • Создание быстрых дашбордов
  • Параметры кеширования и количество графиков на странице дашборда
  • Рекомендации от CHYT
  • Полезные ссылки

Разделение датасетов по подключениямРазделение датасетов по подключениям

  • Подключение в CHYT содержит данные о клике и токене пользователя, от имени которого совершается запрос. Для команд и подразделений создавайте подключения на каждую клику в кластере с токеном робота.
  • Если в подключении использован личный токен, ограничьте права на это подключение правом Исполнение. Тогда другие пользователи смогут смотреть чарты, созданные поверх этого подключения, но не смогут создавать новые датасеты.

Создание быстрых дашбордовСоздание быстрых дашбордов

  • Используйте максимально возможую предагрегацию данных. Например, если данные в миллисекундах, а аналитику нужно строить по дням, то нужно предагрегировать данные до дня.
  • Уменьшите количество вычислений налету. Например, дату можно считать по полю datetime, но фильтрация по этому полю будет медленней.
  • Старайтесь не использовать оператор JOIN. Этот оператор замедляет запросы.
  • Перенесите обработку на SSD-диск, если рекомендации от CHYT не помогли. На SSD-диске таблицы обрабатываются быстрее.

Параметры кеширования и количество графиков на странице дашбордаПараметры кеширования и количество графиков на странице дашборда

  • При открытии дашборда отправляются отдельные запросы по всем селекторам и чартам. Несколько запросов отправляются последовательно. При этом отправляется текущая страница и еще одна страница (веб-страница). Все чарты не загружаются в конце дашборда. Поэтому для ускорения загрузки оптимизируйте данные и ресурсы клики.
  • Не рекомендуется заводить разные клики.
  • По умолчанию время жизни кеша 5 минут. Если данные обновляются реже, например, один раз в день, увеличьте время жизни до одного часа.

Рекомендации от CHYTРекомендации от CHYT

Чаще всего скорость обработки запросов снижается при чтении (не только при непосредственном чтении с диска, но и при разжатии данных, перекладывании из формата хранения YTsaurus в CH и т. д.). В этом случае не всегда помогает увеличение количества инстансов, поэтому рекомендуем изменить формат хранения данных:

  • Чтобы при обработке не читались лишние столбцы, таблицы должны быть c аттрибутом optimize_for=scan.
  • Если при чтении данных используются различные фильтры, то отсортируйте таблицы. Если фильтрация происходит по ключу сортировки, то ненужные чанки будут отфильтрованы до чтения данных из них.

Примечание

В некоторых случаях, если отсортировать таблицу, эффективной фильтрации не будет. Колонка строковая и конвертация DateTime <-> String не является монотонной и однозначной. Преобразование Int <-> DateTime монотонное, но со строковым представлением применять такую оптимизацию в общем случае нельзя. Например, 2020-01-01 00:00:00 и 2020-01-01T00:00:00 - корректное представление одного и того же момента времени в ClickHouse®, но при сортировке со строковым представлением между ними может появиться значение 2020-01-01 00:00:01, поэтому преобразование String -> DateTime не является монотонным и использовать эту оптимизацию нельзя.

  • Не используйте стирающий код. Он предназначен для "холодных" данных, дает повышенную нагрузку на репликацию, и чтение таких таблиц неэффективно. Запросы в таблицу без erasure_codec гораздо быстрее, чем для тех же таблиц с erasure_codec.

Важно

Простая смена аттрибута erasure_codec на optimize_for не изменит формат данных. Чтобы форсировать изменение, запустите операцию merge с опцией force_transform=%true.

  • Старайтесь не использовать динамические таблицы. Любое чтение из динамической таблицы требует чтения версий и всего ключа. При этом ридеры менее параллельные, увеличиваются накладные расходы на конвертацию в формат ClickHouse® и необходимо мержить строки с одинаковыми ключами. В итоге чтение из динамических таблиц гораздо медленнее. Точная цифра зависит от таблицы и паттерна работы с ней, но разница может доходить до 10 раз.
  • Избегайте выполнения неоправданно тяжелых запросов. Например, сортировка 100ГБ, SELECT DISTINCT или GROUP BY по колонке, которая имеет миллионы различных значений, или использование оператора JOIN для больших таблиц. Такие запросы всегда будут обрабатываться медленно.
  • Ускоряйте чтение с помощью повышения replication_factor на таблице.

При построении датасета по диапазону таблиц DataLens использует CHYT-функцию concatYtTablesRange. Функция выводит наиболее общую схему всех таблиц. В результирующий набор попадают столбцы, которые присутствуют во всех таблицах и имеют в них одинаковый тип. Чтобы вывести данные по всем столбцам всех таблиц диапазона, добавьте недостающие столбцы в более старые таблицы с помощью alter-table.

Полезные ссылкиПолезные ссылки

  • Производительность CHYT
  • Визуализация данных из CHYT
  • Управление доступом к DataLens

Была ли статья полезна?

Предыдущая
Особенности JOIN
Следующая
Создание подключения к Greenplum®
Проект Яндекса
© 2025 ООО «Яндекс.Облако»