Size: a a a

ClickHouse не тормозит

2021 March 23

-

-_- in ClickHouse не тормозит
Добрый день. Установил 21.3.2.5-2, работала нестабильно, обновил до 21.3.3.14-2, так же падает, иногда даже при запуске консольного клиента (или так совпадает). В чëм может быть дело? Клиент падает с ошибкой status 500: Code 32, e.displayText() =DB::Exception:Attempt to read after eof
источник

y

yaroslav in ClickHouse не тормозит
Привет. Проблема с решением бизнес-задачи. Есть таблица с пользовательскими кликами с сайта (clicks - MergeTree ORDER BY (click_time)). Там среди прочих колонок есть click_id, click_time, session_id, country_name. Нужно посчитать среднее число кликов в сессии в каждой стране за какой-то период времени:

select country_name, avg(depth)
from (select country_name, session_id,
               count(click_id) session_depth
      from clicks
     where click_time between :from and :to
      group by country_name, session_id)
group by country_name

Данных много (3К кликов в секунду), запрос работает долго, поэтому решили прибегнуть к помощи AggregatingMergeTree, чтобы схлопнуть информацию по минутам (детализацией по секундам готовы принебречь). Но не понятно, как в AggregatingMergeTree сделать два group by: сначала по минуте, стране и сессии:
toStartOfMinute(click_time), country_name, session_id, а затем минуте и стране:
toStartOfMinute(click_time), country_name
Может кто-то сталкивался с такой задачей?
источник

AK

Alexander Kononov in ClickHouse не тормозит
так можно количество кликов делить на кол-во сессий
источник

y

yaroslav in ClickHouse не тормозит
Да, безусловно. Но есть еще кейс расчета средней длительности сессии по странам max(click_time) - min(click_time). Там же уже точно потребуется две группировки: по стране и сессиям, затем по стране?
источник

y

yaroslav in ClickHouse не тормозит
И получается вопрос: можно ли сделать в AggregatingMergeTree 2 группировки?
источник

A

Andrey in ClickHouse не тормозит
ReplicatedVersionedCollapsingMergeTree то же самое что и VersionedCollapsingMergeTree только с репликацией через zookeeper? И при создании в DDL нужно так же указывать путь в zookeeper?
источник

D

Dj in ClickHouse не тормозит
Andrey
ReplicatedVersionedCollapsingMergeTree то же самое что и VersionedCollapsingMergeTree только с репликацией через zookeeper? И при создании в DDL нужно так же указывать путь в zookeeper?
да
источник

A

Andrey in ClickHouse не тормозит
Dj
да
спасибо
источник

KB

Kirill Bespalov in ClickHouse не тормозит
Привет.

А поделитесь пожалуйста своим опытом по изменению схемы таблиц в clickhouse. Типичный кейс - добавляются новые измерения о клиенте - какой сегмент, какая страна, etc. Как лучше всего тут доливать и популейтить такие новые «колонки», не переналивать же всю таблицу с миллионами строк?
источник

S

Slach in ClickHouse не тормозит
Kirill Bespalov
Привет.

А поделитесь пожалуйста своим опытом по изменению схемы таблиц в clickhouse. Типичный кейс - добавляются новые измерения о клиенте - какой сегмент, какая страна, etc. Как лучше всего тут доливать и популейтить такие новые «колонки», не переналивать же всю таблицу с миллионами строк?
у вас для старых данных предполагается какое то  DEFAULT значение? или вам надо прямо старые данные фактически заполнить по какому то алгоритму и у вас где то есть мастер данные по новым измерениям за прошлые периоды?
источник

BB

Bral Bral in ClickHouse не тормозит
Добрый день, если не ошибаюсь , на последнем митапе было озвучено, что наконец-то появится своя прокси у кликхауса. Ещё не появилась?) информации так и не нашел в документации. И чем на данный момент (из прокси) лучше пользоваться. Около года назад использовали chproxy.
источник

KB

Kirill Bespalov in ClickHouse не тормозит
Slach
у вас для старых данных предполагается какое то  DEFAULT значение? или вам надо прямо старые данные фактически заполнить по какому то алгоритму и у вас где то есть мастер данные по новым измерениям за прошлые периоды?
заполнить по какому то алгоритму, да. допустим в абстрактном CRM добавили новые поля и нужно их прокачать в витрины
источник

VR

Vladimir Rudev in ClickHouse не тормозит
Кто-нибудь сталкивался с такими ошибками Code: 49, e.displayText() = DB::Exception: Part 202103_8469_8537_12 intersects previous part 202103_8434_8470_3 (state Committed). It is a bug. (version 20.8.12.2 (official build)) на постоянной основе? Каждый день появляются такие ошибки *на одной и той же таблице* в system.replication_queue. Иногда лечатся через optimize table <> final , иногда не помогает, приходится делать detach/attach партиции(помогает 100%).
Детали: есть Replicated таблица, 8 реплик(без шардов), каждое утро на 4 репликах запускается крон который выполняет несколько  insert в эту таблицу, данные вставляются на каждом хосте в несколько потоков, данные разные но партиции вставляемых данных пересекаются.
После того как кроны отрабатывают - видим 10-20 ошибок в replication_queue на каждом хосте(даже на тех на которых не было вставки).
На хостах еще куча других таблиц replicated, с шардами, с зеркалами, но там запись идет всегда в одну ноду... неужели проблема в параллельной записи в разные зеркала? Подскажите куда можно копнуть?
источник

АР

Андрей Радченко... in ClickHouse не тормозит
Привет. Ребят, подскажите, пожалуйста, КХ без всяких левых костылей не умеет нативно в балк инсерт?
источник

D

Dj in ClickHouse не тормозит
Андрей Радченко
Привет. Ребят, подскажите, пожалуйста, КХ без всяких левых костылей не умеет нативно в балк инсерт?
"балк инсерт" в каком контексте?
источник

D

Dj in ClickHouse не тормозит
КХ только в него и умеет, другой вопрос что драйверов неполноценных много...
источник

АР

Андрей Радченко... in ClickHouse не тормозит
Чтоб заливать не по одной записи, а пачками.
источник

D

Dj in ClickHouse не тормозит
Андрей Радченко
Чтоб заливать не по одной записи, а пачками.
ну КХ только так и умеет...
источник

АР

Андрей Радченко... in ClickHouse не тормозит
200к записей заливается из csv часа 2
источник

D

Dj in ClickHouse не тормозит
ну значит вы заливаете неправильно...
источник