Size: a a a

ClickHouse не тормозит

2020 June 01

DT

Dmitry Titov in ClickHouse не тормозит
примерно?
источник

Е

Екатерина in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
Словари такого размера очень много кушают памяти (ОЧЕНЬ МНОГО ПАМЯТИ) и очень медленно перегружаются.

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

Когда будет доступен merge Join все ускорится если правая таблица отсортирована по ключу джойна.
здравствуйте, можно вопрос, я правильно понимаю, что если какую-то таблицу небольшую, которую надо джойнить делать на каждом шарде, делать поверх шардированных таблиц Distributed таблица, то сервер без дополнительных ухищрений с моей стороны, при джойне левой distributed таблицы и правой distributed таблицы, которая есть на каждом шарде, будет делать на каждом шарде, и потом объединит результаты, а вот если правая таблиц только на одном шарде, то для левой таблицы он потащить на один шард все  данные левой таблицы и джойнит там? Группировку данных он тоже будет делать на шардах, если правая таблица есть на всех шардах?
источник

DT

Dmitry Titov in ClickHouse не тормозит
Yuri Alexandrovich
Yuri Alexandrovich, [31.05.20 21:13]
можно ли как-нибудь узнать сколько будут весить данные, которые отдаются КХ по запросу?
скорее всего нет, кликхаус буферизует кусочек данных и сразу их отправляет, но в http он передает некие хедеры о состоянии запроса, возможно что то вам там будет интересно
источник

YA

Yuri Alexandrovich in ClickHouse не тормозит
спасибо
источник

D

Dmitry Koreckiy in ClickHouse не тормозит
Dmitry Titov
сколько у вас юников?
40kk при условии наличия ~20-30% данных
источник

D

Dmitry Koreckiy in ClickHouse не тормозит
потенциально их может стать 1лярд
источник

D

Dmitry Koreckiy in ClickHouse не тормозит
а раз в час не более 400к - 1кк уников
источник

DT

Dmitry Titov in ClickHouse не тормозит
можно сделать так
FROM table
WHERE cityHash64(field1, field2, field3) % 1000000 = 0
group by field1, field2, field3
источник

DT

Dmitry Titov in ClickHouse не тормозит
и так все пробегать 0-1-2-3-4-999999, это должно быть быстрее чем делать лимит каждый раз
источник

DT

Dmitry Titov in ClickHouse не тормозит
либо можно один раз посчитать весь запрос и выгрузить в временную таблицу и уже по ней бегать лимитом
источник

D

Dmitry Koreckiy in ClickHouse не тормозит
Dmitry Titov
либо можно один раз посчитать весь запрос и выгрузить в временную таблицу и уже по ней бегать лимитом
вот в этом и была задумка ))
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Екатерина
здравствуйте, можно вопрос, я правильно понимаю, что если какую-то таблицу небольшую, которую надо джойнить делать на каждом шарде, делать поверх шардированных таблиц Distributed таблица, то сервер без дополнительных ухищрений с моей стороны, при джойне левой distributed таблицы и правой distributed таблицы, которая есть на каждом шарде, будет делать на каждом шарде, и потом объединит результаты, а вот если правая таблиц только на одном шарде, то для левой таблицы он потащить на один шард все  данные левой таблицы и джойнит там? Группировку данных он тоже будет делать на шардах, если правая таблица есть на всех шардах?
Можно написать global join тогда правую таблицу разошлет
источник

DT

Dmitry Titov in ClickHouse не тормозит
ну временную таблицу вы можете и руками создавать, транкейтить и тд.
не используя механизм mat view
источник

Е

Екатерина in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
Можно написать global join тогда правую таблицу разошлет
по ресурсам не выходит критичной разницы, что делать global , что дублировать правую по шардам, а потом делать поверх нее  Distributed?
источник

S

Slach in ClickHouse не тормозит
Yuri Alexandrovich
Yuri Alexandrovich, [31.05.20 21:13]
можно ли как-нибудь узнать сколько будут весить данные, которые отдаются КХ по запросу?
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Екатерина
по ресурсам не выходит критичной разницы, что делать global , что дублировать правую по шардам, а потом делать поверх нее  Distributed?
с дублированной дешевле. На самом деле не нужна дистрибьютид таблица для нее. Она ведь одинаковая на всех шардах.
источник

YA

Yuri Alexandrovich in ClickHouse не тормозит
спасибо
источник

Е

Екатерина in ClickHouse не тормозит
то есть если я делаю Tab1_distrib join Tab2, то сервер сджойнит каждый  шардированный кусок левой таблицы с правой на соответствующем шарде?
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Екатерина
то есть если я делаю Tab1_distrib join Tab2, то сервер сджойнит каждый  шардированный кусок левой таблицы с правой на соответствующем шарде?
Да
источник

Е

Екатерина in ClickHouse не тормозит
спасибо!
источник