Size: a a a

ClickHouse не тормозит

2021 July 02

c

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

ИМ

Илья Максимов... in ClickHouse не тормозит
CREATE TABLE aggregates.events_hour_local (
   `stats_day` Date,
   `event_time` DateTime,
   `event_type` LowCardinality(String),
   `ad_type` LowCardinality(String),
   `domain_referrer` String,
   `campaign_id` UInt32,
   `spot_id` UInt32,
   `spot_size` UInt32,
   `country` LowCardinality(String),
   `os_type` LowCardinality(String),
   `os_family` LowCardinality(String),
   `browser_name` LowCardinality(String),
   `browser_family` LowCardinality(String),
   `utm_source` String,
   `utm_medium` String,
   `utm_campaign` String,
   `utm_content` String,
   `cpc_sum` AggregateFunction(sum, Float64),
   `cpm_sum` AggregateFunction(sum, Float64),
   `ecpm_sum` AggregateFunction(sum, Float64),
   `count` AggregateFunction(count)
)    ENGINE = ReplicatedAggregatingMergeTree('/clickhouse/{cluster}/tables/{shard}/aggregates/user_events_hour_local', '{replica}')
    PARTITION BY toYYYYMM(stats_day)
    ORDER BY (stats_day, event_time, event_type, ad_type, domain_referrer, country, campaign_id, spot_id, spot_size, browser_name, browser_family, os_type, os_family, utm_source, utm_medium, utm_campaign, utm_content)
    TTL stats_day + toIntervalMonth(6);
источник

BK

Brahma Kumaris in ClickHouse не тормозит
Локаль сервера, либо укажите timezone при создании поля date/datetime
источник

VG

Vladimir Goncharov in ClickHouse не тормозит
>ad_type LowCardinality(String)
может LowCardinality кривовато работает на Replicated таблицах...
источник

r

rasstroen in ClickHouse не тормозит
group by concat(ad_type,'')
источник

r

rasstroen in ClickHouse не тормозит
проверить гипотезу что группируется по словарю на каждом шарде по разному
источник

ЛС

Лина Саволайнен... in ClickHouse не тормозит
Привет. Вопрос такой: можно ли делать If в where? Мне нужно ввести условие в зависимости от даты события, что-то я не могу придумать, как мне это сделать
источник

c

critskiy in ClickHouse не тормозит
да, можно, насколько мне не изменяет память
источник

D

Dj in ClickHouse не тормозит
можно любую обычную функцию в where
источник

VG

Vladimir Goncharov in ClickHouse не тормозит
кроме агрегатной :)
источник

D

Dj in ClickHouse не тормозит
поэтому написал "обычную"
источник

VG

Vladimir Goncharov in ClickHouse не тормозит
не заметил :)
источник

ЛС

Лина Саволайнен... in ClickHouse не тормозит
тогда еще вопрос (возможно, тупой). Если писать
IF(dt<='2021-06-11',creation_entry_point!='change_avatar', второе условие), то как оформить второе условие? Весь if звучит как "если дата меньше 11 июня, то не учитывать такой энтри поинт, иначе - учитывать". Не могу понять, как сделать "учитывать"
источник

D

Dj in ClickHouse не тормозит
If (condition, true-result, false-result)
источник

D

Dj in ClickHouse не тормозит
условие в if одно
источник

c

critskiy in ClickHouse не тормозит
Здесь даже if не надо, кмк. Вам только where и условие, которое необходимо учитывать. Только вот какой там ORDER BY ключ.... %)
источник

VG

Vladimir Goncharov in ClickHouse не тормозит
+1
источник

VG

Vladimir Goncharov in ClickHouse не тормозит
where (dt<='2021-06-11'  AND creation_entry_point!='change_avatar') or (dt>'2021-06-11'  AND creation_entry_point='change_avatar')
источник

VG

Vladimir Goncharov in ClickHouse не тормозит
или where (dt<='2021-06-11'  AND creation_entry_point!='change_avatar') or (dt>'2021-06-11')
смотря что вам там нужно
источник

ЛС

Лина Саволайнен... in ClickHouse не тормозит
спасибо, это то, что нужно
источник