Size: a a a

ClickHouse не тормозит

2021 January 13

S

Slach in ClickHouse не тормозит
Munir
partition by - тут лишний кмк.
нет не лишний
источник

M

Munir in ClickHouse не тормозит
в смысле там шинковаться партиции будут по миллисекундам?
источник

S

Slach in ClickHouse не тормозит
Munir
в смысле там шинковаться партиции будут по миллисекундам?
ну там наверняка PARTITION BY toYYYYMM(datetime_field) ?
источник

N

Nikita in ClickHouse не тормозит
Slach
ну там наверняка PARTITION BY toYYYYMM(datetime_field) ?
Ага
источник

N

Nikita in ClickHouse не тормозит
PARTITION BY (toYYYYMMDD(time), toHour(time))
источник

S

Slach in ClickHouse не тормозит
Nikita
Всем привет!

Если есть таблица с колонкой time типа DateTime64(6). По этой колонке есть PARTITION BY и  ORDER BY (составной). Будет ли эффективен следующий запрос? То есть не будет же вся колонка сортироваться?

select * from table order by desc(time) limit 10
источник

S

Slach in ClickHouse не тормозит
Nikita
PARTITION BY (toYYYYMMDD(time), toHour(time))
слишком частые партитции... это плохо
сократите до toYYYYMM(time)
источник

M

Munir in ClickHouse не тормозит
если честно, то не знаю наверняка, будет или нет. но если нет, то тогда ты хочешь получить произвольные 10 записей в произвольной партиции и отсортировать в обратном порядке? скорее всего - тут весь столбец должен взяться.
источник

N

Nikita in ClickHouse не тормозит
Понятно. Спасибо за совет по партициям! Тогда буду замерять производительность на данных.
источник

M

Munir in ClickHouse не тормозит
у меня похожий запрос:
5 rows in set. Elapsed: 0.698 sec. Processed 1.16 million rows, 9.30 MB (1.66 million rows/s., 13.31 MB/s.)
хотя если выбирать max( от этого поля), то
1 rows in set. Elapsed: 60.483 sec. Processed 1.69 billion rows, 13.48 GB (27.87 million rows/s., 222.93 MB/s.)
источник

M

Munir in ClickHouse не тормозит
получается - норм запрос. :)  пользуйся!
источник

N

Nikita in ClickHouse не тормозит
То есть все зависит от конкретного запроса? Скорее всего просто SELECT будет быстрым.

Спасибо за помощь))
источник

M

Munir in ClickHouse не тормозит
реально.  order by timekey desc limit 1  намного лучше, чем max(timekey)
источник

IG

Ilona Gladysheva in ClickHouse не тормозит
Добрый день!

Подскажите, плз, в чем может быть проблема. Использую nullIf для делителя, но все равно выдает Division by zero. Проверяю отдельно делитель, вижу null (ну то есть пустое поле, nullIf срабатывает). Версия 20.11.5.18.

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

DT

Dmitry Titov in ClickHouse не тормозит
Ilona Gladysheva
Добрый день!

Подскажите, плз, в чем может быть проблема. Использую nullIf для делителя, но все равно выдает Division by zero. Проверяю отдельно делитель, вижу null (ну то есть пустое поле, nullIf срабатывает). Версия 20.11.5.18.

Спасибо!
0 != null
Это разные понятия
источник

IG

Ilona Gladysheva in ClickHouse не тормозит
Да, поэтому чтобы избежать деления на 0 я подменяю его на null
источник

DT

Dmitry Titov in ClickHouse не тормозит
Ilona Gladysheva
Да, поэтому чтобы избежать деления на 0 я подменяю его на null
А как конкретно выражение выглядит?
источник

IG

Ilona Gladysheva in ClickHouse не тормозит
Dmitry Titov
А как конкретно выражение выглядит?
Select a / nullIf(b,0) from T
источник

DT

Dmitry Titov in ClickHouse не тормозит
Ilona Gladysheva
Select a / nullIf(b,0) from T
WITH
   3 AS a,
   0 AS b
SELECT a / nullIf(b, 0)

Query id: 9bc4bb40-236f-413d-8313-4d5fcbfe9bb3

┌─divide(a, nullIf(b, 0))─┐
│                    ᴺᵁᴸᴸ │
└─────────────────────────┘

clickhouse 20.13

Видимо проблема связана с типом данных
https://github.com/ClickHouse/ClickHouse/issues/7509#issuecomment-731599933
источник

DT

Dmitry Titov in ClickHouse не тормозит
У вас Decimal?
источник