Что такое ClickHouse

ClickHouse

колоночная система управления базами данных. Оптимизирована для выполнения аналитических запросов (OLAP-система или Online Analytical Processing). Разработана компанией Яндекс, в основном, на C++ (75%) и Python (15%). В 2021 году совместно с Index Ventures и Benchmark Capital было объявлено о создании отдельной компании ClickHouse Inc. Она занимается развитием и поддержкой одноименного программного продукта.

ClickHouse можно установить на системы Linux, BSD и Mac OS. Для установки можно использовать исходник, репозиторий, скачать готовый бинарник или запускать в виде Docker-контейнера. Подробная инструкция представлена в документации на официальном сайте.

Плюсы СУБД:

  • Высокая скорость работы. В сравнении с аналогами, кликхаус демонстрирует высокие показатели своей работы.
  • Отказоустойчивость и масштабируемость. Система легко разворачивается в виде кластера, для расширения которого можно просто добавлять новые узлы.
  • Легкий и удобный в использовании. Поддерживает близкий к стандарту SQL диалект.

Минусы системы:

  • Отсутствие транзакций. Для OLAP-баз характерны, преимущественно, запросы на чтение. Наличие возможности транзакций не является целесообразным.
  • Ограничения для запросов JOIN.
  • Большая зависимость от объема оперативной памяти.
  • Медленная работа для маленьких запросов (одиночных строк).

В сравнении с другими СУБД ClickHouse демонстрирует высокую скорость работы. Например, сравнение с PostgreSQL и Elastic представлено на сайте хабра.

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

🙂 CREATE TABLE users (
id UInt32,
name String,
title String,
dateCreated DateTime,
age UInt8
) ENGINE = MergeTree() PRIMARY KEY id

* в данном примере мы создадим таблицу users.

Помимо clickhouse-client, СУБД интегрируется с большинством популярных языков программирования, а также для работы существует веб-клиент, драйверы ODBC и JDBC.

Другие популярные СУБД, которые используются для аналитических запросов:

  1. Vertica
  2. Druid
  3. Pinot
  4. Elasticsearch
  5. Tarantool

Подробнее о ClickHouse на Википедии.

admin

Share
Published by
admin

Recent Posts

Настройка Mercurial по HTTPS

Иногда mercurial, при скачивании и комитах ругается на https. Особенно на самоподписанные сертификаты. Чтобы заработал…

3 недели ago

Компиляция libvirt в Ubuntu

Компиляция libvirt Подробнее

3 недели ago

Ошибка libvirt permission denied: решение

Если возникает ошибка libvirt destroy lxc permission denied , при попытке остановить контейнер: _x000D_# virsh…

3 недели ago

Настройка редиректа в NGINX

Файлы с примерами редиректа для nginx Подробнее

3 недели ago

Включение gzip в NGINX

Как включить gzip сжатие в Nginx ? Подробнее

3 недели ago

Удаление postinst-скрипта в Linux

Иногда возникает ситуация, когда криво настроенные пакеты не устанавливаются в системе. У меня это произошло…

3 недели ago