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

Режимы развертывания

ClickHouse — это универсальная система управления базами данных, которую можно развернуть несколькими способами в зависимости от ваших потребностей. Во всех вариантах развертывания используется один и тот же мощный движок базы данных ClickHouse — различается лишь то, как вы с ним взаимодействуете и где он работает.

Независимо от того, запускаете ли вы крупномасштабную аналитику в продакшене, выполняете локальный анализ данных или создаёте приложения, существует вариант развертывания, подходящий под ваш сценарий. То, что во всех случаях используется один и тот же базовый движок, гарантирует одинаково высокую производительность и совместимость с SQL во всех режимах развертывания. В этом руководстве рассматриваются четыре основных способа развертывания и использования ClickHouse:

  • ClickHouse Server для традиционных клиент-серверных развертываний
  • ClickHouse Cloud для полностью управляемой работы с базой данных
  • clickhouse-local для обработки данных из командной строки
  • chDB для встраивания ClickHouse непосредственно в приложения

У каждого режима развертывания есть свои сильные стороны и оптимальные сценарии использования, которые мы подробно рассмотрим ниже.

ClickHouse Server

ClickHouse Server представляет традиционную архитектуру клиент-сервер и идеально подходит для продуктивных развертываний. Этот режим развертывания предоставляет полный набор возможностей OLAP‑СУБД с высокой пропускной способностью и низкой задержкой выполнения запросов, которыми известен ClickHouse.

ClickHouse Server

С точки зрения гибкости развертывания, ClickHouse Server можно установить на локальную машину для разработки или тестирования, развернуть у основных облачных провайдеров, таких как AWS, GCP или Azure, для облачной эксплуатации, либо установить на собственное on‑premises‑оборудование. Для сценариев крупного масштаба его можно настроить как распределённый кластер для обработки повышенной нагрузки и обеспечения высокой доступности.

Этот режим развертывания является предпочтительным выбором для продуктивных сред, где критичны надёжность, производительность и полный доступ ко всем возможностям системы.

ClickHouse Cloud

ClickHouse Cloud — это полностью управляемая версия ClickHouse, которая устраняет операционные издержки, связанные с запуском и сопровождением собственного развертывания. Сохраняя все основные возможности ClickHouse Server, она дополняет их функциями, призванными упростить разработку и эксплуатацию.

ClickHouse Cloud

Ключевое преимущество ClickHouse Cloud — интегрированный набор инструментов. ClickPipes обеспечивает надёжный фреймворк для ингестии данных, позволяя легко подключать и передавать потоки данных из различных источников без необходимости управлять сложными ETL-пайплайнами. Платформа также предлагает специализированный API для выполнения запросов, что значительно упрощает разработку приложений.

SQL Console в ClickHouse Cloud включает мощную функцию создания дашбордов, которая позволяет преобразовывать ваши запросы в интерактивные визуализации. Вы можете создавать и делиться дашбордами, построенными на основе сохранённых запросов, с возможностью добавлять интерактивные элементы через параметры запросов. Эти дашборды можно сделать динамическими с помощью глобальных фильтров, что позволяет пользователям исследовать данные через настраиваемые представления — однако важно учитывать, что пользователям потребуется как минимум доступ на чтение к соответствующим сохранённым запросам, чтобы просматривать визуализации.

Для мониторинга и оптимизации ClickHouse Cloud включает встроенные графики и query insights. Эти инструменты обеспечивают глубокое понимание производительности вашего кластера, помогая разобраться в шаблонах запросов, использовании ресурсов и потенциальных возможностях оптимизации. Такой уровень наблюдаемости особенно ценен для команд, которым необходимо поддерживать высокопроизводительную аналитическую инфраструктуру, не выделяя значительные ресурсы на управление ею.

Управляемый характер сервиса означает, что вам не нужно беспокоиться об обновлениях, резервном копировании, масштабировании или установке исправлений безопасности — всё это выполняется автоматически. Это делает ClickHouse Cloud оптимальным выбором для организаций, которые хотят сосредоточиться на своих данных и приложениях, а не на администрировании базы данных.

clickhouse-local

clickhouse-local — это мощный инструмент командной строки, который предоставляет полный набор возможностей ClickHouse в виде автономного исполняемого файла. По сути, это та же база данных, что и ClickHouse Server, но упакованная таким образом, чтобы вы могли использовать все возможности ClickHouse напрямую из командной строки без запуска экземпляра сервера.

clickHouse-local

Этот инструмент превосходно подходит для разовой (ad-hoc) аналитики данных, особенно при работе с локальными файлами или данными, размещёнными в облачных хранилищах. Вы можете напрямую выполнять запросы к файлам в различных форматах (CSV, JSON, Parquet и т. д.), используя SQL-диалект ClickHouse, что делает его отличным выбором для быстрого исследования данных или единичных аналитических задач.

Поскольку clickhouse-local включает всю функциональность ClickHouse, вы можете использовать его для преобразования данных, конвертации форматов или любых других операций с базой данных, которые вы обычно выполняете с ClickHouse Server. Хотя он в первую очередь предназначен для временных операций, при необходимости он также может сохранять данные с использованием того же движка хранения, что и ClickHouse Server.

Сочетание табличных функций для работы с удалёнными данными и доступа к локальной файловой системе делает clickhouse-local особенно полезным в сценариях, когда вам нужно объединять данные между ClickHouse Server и файлами на вашей локальной машине. Это особенно ценно при работе с конфиденциальными или временными локальными данными, которые вы не хотите загружать на сервер.

chDB

chDB — это ClickHouse, встроенный как внутрипроцессный движок базы данных; основная реализация — для Python, но он также доступен для Go, Rust, NodeJS и Bun. Этот вариант развертывания предоставляет мощные OLAP‑возможности ClickHouse непосредственно внутри процесса вашего приложения, устраняя необходимость в отдельной установке базы данных.

chDB — встроенный ClickHouse

chDB обеспечивает бесшовную интеграцию с экосистемой вашего приложения. В Python, например, он оптимизирован для эффективной работы с распространёнными инструментами анализа данных, такими как Pandas и Arrow, минимизируя накладные расходы на копирование данных за счёт использования Python memoryview. Это делает его особенно ценным для специалистов по данным и аналитиков, которые хотят использовать производительность выполнения запросов ClickHouse в рамках своих существующих рабочих процессов.

chDB также может подключаться к базам данных, созданным с помощью clickhouse-local, обеспечивая гибкость в работе с вашими данными. Это означает, что вы можете без усилий переключаться между локальной разработкой, исследованием данных в Python и более постоянными решениями для хранения, не изменяя свои подходы к доступу к данным.