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

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

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

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

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

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

ClickHouse Server

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


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

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

ClickHouse Cloud

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

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

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

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

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

clickhouse-local

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

Этот инструмент отлично подходит для ад-хок анализа данных, особенно при работе с локальными файлами или данными, хранящимися в облачных службах хранения. Вы можете напрямую запрашивать файлы в различных форматах (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 обеспечивает бесшовную интеграцию с экосистемой вашего приложения. В Python, например, он оптимизирован для эффективной работы с общими инструментами науки о данных, такими как Pandas и Arrow, минимизируя накладные расходы на копирование данных через память Python. Это делает его особенно ценным для data scientists и аналитиков, которые хотят использовать производительность запросов ClickHouse в рамках своих существующих рабочих процессов.

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