Size: a a a

ClickHouse не тормозит

2020 June 01

D

Dmitry Koreckiy in ClickHouse не тормозит
Dmitry Titov
можно начать хитрить и обернуть таблицу tmp1 в merge движок, и  тогда возможно запрос полетит к настоящей таблице
не совсем понял о чем речь)

есть конечно вариант засунуть в цепочку между tmp1 и tmp2 еще null engine, но не очень хочется
источник

DT

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

Е

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

level_1

server_1
......
server_5

level_2

server_6
......
server_10

level_3

server_11
......
server_15

all_servers

server_1
......
server_15
спасибо!
источник

DT

Dmitry Titov in ClickHouse не тормозит
Dmitry Koreckiy
не совсем понял о чем речь)

есть конечно вариант засунуть в цепочку между tmp1 и tmp2 еще null engine, но не очень хочется
тут все зависит от специфики
источник

DT

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

DT

Dmitry Titov in ClickHouse не тормозит
MV не умеет в union, сие есть паршиво
источник

DT

Dmitry Titov in ClickHouse не тормозит
CREATE MATERIALIZED VIEW mv_tmp1_to_tmp2 TO tmp2 (
 key String,
 val Int32
) AS
SELECT
   key,
   sum(val + tmps.val) as val
FROM tmp1 LEFT JOIN (SELECT key, val FROM tmp2  WHERE key IN (SELECT key FROM tmp1) ORDER BY val DESC LIMIT 1 BY key ) as tmps USING (key)
group by key
источник

DT

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

DT

Dmitry Titov in ClickHouse не тормозит
но это кривая хрень
источник

DT

Dmitry Titov in ClickHouse не тормозит
и возможно даже неправильно работает
источник

D

Dmitry Koreckiy in ClickHouse не тормозит
tmp2 имеет ttl час 🙂 соответственно при следующем заполнении она будет пустой 🙂
источник

DT

Dmitry Titov in ClickHouse не тормозит
Dmitry Koreckiy
tmp2 имеет ttl час 🙂 соответственно при следующем заполнении она будет пустой 🙂
ну. это далеко не обязательно:)
TTL он удалить данные после истечения срока в неопределенное время
источник

DT

Dmitry Titov in ClickHouse не тормозит
ну можно заменить tmp2 на tmp1 в моем запросе. но там хитрее будет
источник

D

Dmitry Koreckiy in ClickHouse не тормозит
с left join кстати пробовал
аналогичный результат получился как и в моем первом примере 🙂
источник

D

Dmitry Koreckiy in ClickHouse не тормозит
такое ощущение складывает что в каком бы месте и сколько бы раз я не обращался к tmp1 внутри mv она будет видеть только данные от тригера
источник

DT

Dmitry Titov in ClickHouse не тормозит
Dmitry Koreckiy
такое ощущение складывает что в каком бы месте и сколько бы раз я не обращался к tmp1 внутри mv она будет видеть только данные от тригера
ну потому, что он заменяет все обращения к tmp1 на данные из триггера
источник

AB

Andrey Bobelev in ClickHouse не тормозит
roadmap пропал из документации 🙁
источник

DT

Dmitry Titov in ClickHouse не тормозит
Andrey Bobelev
roadmap пропал из документации 🙁
источник

DT

Dmitry Titov in ClickHouse не тормозит
Dmitry Koreckiy
с left join кстати пробовал
аналогичный результат получился как и в моем первом примере 🙂
такой вопрос, зачем вам очищать таблицу по TTL?
источник

D

Dmitry Koreckiy in ClickHouse не тормозит
есть сурс таблица - динамика по объектам с некоторыми статусами

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

сам итоговый статус можно получить только просуммировав всю динамику
источник