Size: a a a

ClickHouse не тормозит

2019 December 04

A

Aleksandr baltazor in ClickHouse не тормозит
таблицы то разные
источник

MK

Matwey Kornilov in ClickHouse не тормозит
Господа, а есть какой-то аналог EXPLAIN ANALYZE?
источник

М

Михаил in ClickHouse не тормозит
Aleksandr baltazor
так а какая разница для clickhouse-copier один инстанс или нет
Мы зукипер не заводили, а только ради этого его поднимать не хочется
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Михаил
Всем привет. Подскажите, плиз, есть ли какие-то best practices по перегону данных из одной таблицы в другую в рамках одного инстанса? Есть одна табличка (~500m записей), нужно перегнать их в другую с немного изменённой структурой. INSERT SELECT подходит прекрасно за исключением одного момента. Есть несколько materialized views. Их тоже надо как-то перегнать и мне интересно, как лучше это сделать. Пробовал создать на новой таблице и после этого перегонять данные — падает с ошибкой о лимите памяти на запрос. Такая же история если просто делать INSERT INTO new_matview_name SELECT ... FROM old_matview_name. Пока что крутится в голове просто переливать данные постепенно, небольшими кусочками, но выглядит так, будто есть способ проще/эффективнее. Clickhouse-copier вряд ли подойдёт, т.к. всего 1 инстанс, зукипер не используем.
1. сколько памяти у сервера?
2. что такое в MV что оно жрет память? Join ?
3. попробуйте set max_block_size=10000, max_insert_block_size=100000 перед insert в таблицу с MV.
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Matwey Kornilov
Господа, а есть какой-то аналог EXPLAIN ANALYZE?
set send_logs_level = 'debug'

у КХ нет оптимизатора, там все прямое как палка
источник

М

Михаил in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
1. сколько памяти у сервера?
2. что такое в MV что оно жрет память? Join ?
3. попробуйте set max_block_size=10000, max_insert_block_size=100000 перед insert в таблицу с MV.
1. 32GB, кажется
2. На первый взгляд ничего такого, просто табличка
3. Попробую, спасибо
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Михаил
1. 32GB, кажется
2. На первый взгляд ничего такого, просто табличка
3. Попробую, спасибо
>32GB
set max_memory_usage=20000000000, max_bytes_before_external_sort=15000000000, max_bytes_before_external_group_by=15000000000

>2. На первый взгляд ничего такого, просто табличка
ну group by / order by там есть?
источник

М

Михаил in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
>32GB
set max_memory_usage=20000000000, max_bytes_before_external_sort=15000000000, max_bytes_before_external_group_by=15000000000

>2. На первый взгляд ничего такого, просто табличка
ну group by / order by там есть?
Буду смотреть, спасибо!
источник

М

Михаил in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
>32GB
set max_memory_usage=20000000000, max_bytes_before_external_sort=15000000000, max_bytes_before_external_group_by=15000000000

>2. На первый взгляд ничего такого, просто табличка
ну group by / order by там есть?
Order by безусловно есть
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Михаил
Order by безусловно есть
гм, в select-e order by ? нафига? он там только память жрет и тормозит.
источник

MK

Matwey Kornilov in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
set send_logs_level = 'debug'

у КХ нет оптимизатора, там все прямое как палка
Спасибо
источник

М

Михаил in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
гм, в select-e order by ? нафига? он там только память жрет и тормозит.
Надо подумать)
источник

М

Михаил in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
гм, в select-e order by ? нафига? он там только память жрет и тормозит.
Сама таблица MergeTree(), matviews с другими движками (например, SummingMergeTree())
Order by, соответственно, в качестве первичного ключа
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Михаил
Сама таблица MergeTree(), matviews с другими движками (например, SummingMergeTree())
Order by, соответственно, в качестве первичного ключа
я спрашивал про order by в select. При чем тут первичный ключ движка.
источник

М

Михаил in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
я спрашивал про order by в select. При чем тут первичный ключ движка.
А, пардон, в таком случае нет
источник

М

Михаил in ClickHouse не тормозит
Селект просто втупую забирает данные из таблицы
источник

AN

Alexandr Novikov in ClickHouse не тормозит
Konstantin Zamyakin
попробую найти как до компа доберусь
Не добрался?))
источник
2019 December 05

BB

Bral Bral in ClickHouse не тормозит
Подскажите! ситуация подталкивает к использованию таблиц merge, собственно и возник вопрос , хотя ответ , скорее всего будет - "нет" , но все же. Есть 2 таблицы - данные идентичны , различия только в order by. Обращение идёт к таблице merge , к примеру , по ключу сортировки из первой таблицы. Какой вернётся результат ? Двойной- поскольку данные идентичны , или же мердж подумает , что за предикат и будет искать только в той таблице , где это актуально?
источник

BB

Bral Bral in ClickHouse не тормозит
Этот вопрос из-за того, что смутила фраза в документации " При чтении будут использованы индексы тех таблиц, из которых реально идёт чтение, если они существуют "
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Bral Bral
Подскажите! ситуация подталкивает к использованию таблиц merge, собственно и возник вопрос , хотя ответ , скорее всего будет - "нет" , но все же. Есть 2 таблицы - данные идентичны , различия только в order by. Обращение идёт к таблице merge , к примеру , по ключу сортировки из первой таблицы. Какой вернётся результат ? Двойной- поскольку данные идентичны , или же мердж подумает , что за предикат и будет искать только в той таблице , где это актуально?
двойной
источник