Size: a a a

ClickHouse не тормозит

2021 February 15

D

Dj in ClickHouse не тормозит
er@essbase.ru
а через hdfs ?
через что угодно можете, зависит уже от данных... etl короче
источник

H

Hello in ClickHouse не тормозит
KiLEX 萊赫
Тут возникнет проблема негарантированности последовательности вставки, также приход событий задним числом сломает всё.
Мы ввели сущность фиксирования остатков - и дальше каждый раз расчитываем на лету, благо кх это может и быстро.
но если событие есть задним числом, можно всё пересчитать после изменения? кх должен же быстро считать?

а ты не мог бы поделиться своими идеями? а то мы буксуем, а задача вроде несложная.
источник

M

Mishanya in ClickHouse не тормозит
Игорь Трофимов
это я понимаю, а почему return no rows, если на данный момент задержка примерна 200мил.
в этой партиции точно +200млн ?
источник

AK

Andron Ka in ClickHouse не тормозит
Добрый день. Настраиваю Tableau Server + Clickhouse. Какой диалект нужно указывать в коннекторе ? Подскажите пожалуйста.  
dialect.tdd
<dialect name='SQLDialect'
        class='clickhouse_odbc'
        version='18.1'>
</dialect>

Спасибо.
источник

ИТ

Игорь Трофимов... in ClickHouse не тормозит
Mishanya
в этой партиции точно +200млн ?
да, сейчас чуть меньше
источник

D

Dmitry Koreckiy in ClickHouse не тормозит
Всем привет.
Возможно sumMap запретить удалять нулевые значения?
источник

D

Dj in ClickHouse не тормозит
Dmitry Koreckiy
Всем привет.
Возможно sumMap запретить удалять нулевые значения?
да, через tuple(value)
источник

D

Dmitry Koreckiy in ClickHouse не тормозит
Dj
да, через tuple(value)
не совсем понял
источник

D

Dmitry Koreckiy in ClickHouse не тормозит
Dj
да, через tuple(value)
Вот таблица для примера
CREATE TABLE table_test (
 `field` LowCardinality(String),
 `fieldMap1` SimpleAggregateFunction(sumMap, Tuple(Array(String), Array(Int64))),
 `fieldMap2` SimpleAggregateFunction(sumMap, Tuple(Array(String), Array(Int64))),
 `fieldMap3` SimpleAggregateFunction(sumMap, Tuple(Array(String), Array(Int64))),
 `total` SimpleAggregateFunction(sum, Int64)
) ENGINE = AggregatingMergeTree()
ORDER BY
 field SETTINGS index_granularity = 4096
источник

D

Dj in ClickHouse не тормозит
Dmitry Koreckiy
не совсем понял
сорри я погнал, думал про аггрегаций, имхо только заменой на спец. значение типа:
select sumMap(arrayMap(a->coalesce(a,-999999),x), y) from (
select [2,3,null,2,3] AS x, [1,1,2,3,4] as y )
источник

D

Dmitry Koreckiy in ClickHouse не тормозит
Dj
сорри я погнал, думал про аггрегаций, имхо только заменой на спец. значение типа:
select sumMap(arrayMap(a->coalesce(a,-999999),x), y) from (
select [2,3,null,2,3] AS x, [1,1,2,3,4] as y )
ну т.е. в данном случае вообще никак получается.
если в fieldMap1 уже лежит [['a'],[1]] и приходит [['a'],[-1]], то он удалит ключ "а" со значением 0
источник

D

Dmitry Koreckiy in ClickHouse не тормозит
И заменить даже не получится, так как в процессе не известно значение "a"
источник

D

Dj in ClickHouse не тормозит
Dmitry Koreckiy
Вот таблица для примера
CREATE TABLE table_test (
 `field` LowCardinality(String),
 `fieldMap1` SimpleAggregateFunction(sumMap, Tuple(Array(String), Array(Int64))),
 `fieldMap2` SimpleAggregateFunction(sumMap, Tuple(Array(String), Array(Int64))),
 `fieldMap3` SimpleAggregateFunction(sumMap, Tuple(Array(String), Array(Int64))),
 `total` SimpleAggregateFunction(sum, Int64)
) ENGINE = AggregatingMergeTree()
ORDER BY
 field SETTINGS index_granularity = 4096
стоп, у вас же строки как ключи, все должно быть ок. у вас где нулевые значения приходят?
источник

D

Dmitry Koreckiy in ClickHouse не тормозит
если результат суммирования value равен 0, то ключ удаляется из map вместе с его 0 значением
источник

D

Dmitry Koreckiy in ClickHouse не тормозит
Просто все выглядит так, что придется переходить на MergeTree с TTL group by
источник

D

Dj in ClickHouse не тормозит
Dmitry Koreckiy
если результат суммирования value равен 0, то ключ удаляется из map вместе с его 0 значением
действительно... не обращал внимания вообще )
придется вам рядом arrayDistinct для ключей держать как колонку...
select arrayDistinct(flatten(groupArray(x))) as keys, sumMap(x, y)  from (
select [1,3,3] AS x, [1,-1,1] as y UNION ALL
select [1,4,5] AS x, [1,1,-1] as y)
источник

D

Dmitry Koreckiy in ClickHouse не тормозит
Dj
действительно... не обращал внимания вообще )
придется вам рядом arrayDistinct для ключей держать как колонку...
select arrayDistinct(flatten(groupArray(x))) as keys, sumMap(x, y)  from (
select [1,3,3] AS x, [1,-1,1] as y UNION ALL
select [1,4,5] AS x, [1,1,-1] as y)
оу, точно, можно же их рядышком положить!
спасибо! :)
источник

ВЕ

Веня Ерофеев... in ClickHouse не тормозит
Denny Crane [not a Yandex bot]
три ЗуКипера нужно для HighAvialabilty

КХ-зу все равно один зукипер или 7
Это значит, что можно иметь три реплики КХ используя зукипер только на одной машине, верно?
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
Веня Ерофеев
Это значит, что можно иметь три реплики КХ используя зукипер только на одной машине, верно?
да.

но
Если машина с зукипером рестартанет, то таблицы в КХ станут readonly.
Если на машине с зукипером кончится место, то зукипер запорет свою базу, и придется переатачивать таблицу в КХ чтобы пересоздать мету в зукипере
источник

ВЕ

Веня Ерофеев... in ClickHouse не тормозит
Denny Crane [not a Yandex bot]
да.

но
Если машина с зукипером рестартанет, то таблицы в КХ станут readonly.
Если на машине с зукипером кончится место, то зукипер запорет свою базу, и придется переатачивать таблицу в КХ чтобы пересоздать мету в зукипере
Благодарю!
источник