Size: a a a

ClickHouse не тормозит

2021 March 14

MZ

Maxim Zalysin in ClickHouse не тормозит
Maxim Zalysin
Приветствую!

Подскажите, пожалуйста кто уже с этим разбирался, ClickHouse актуальных версий поддерживает подключение к Zookeeper с аутентификацией SASL?

По документации и найденным issue, ощущение что поддерживается только нативная digest-md5.
Пробовал кто-нибудь подключать ClickHouse к Zookeeper c SASL аутентификацией?
Это возможно?
источник

DT

Dmitry Titov in ClickHouse не тормозит
Maxim Zalysin
Пробовал кто-нибудь подключать ClickHouse к Zookeeper c SASL аутентификацией?
Это возможно?
https://github.com/ClickHouse/ClickHouse/issues/9431
Скорее всего не работает
источник

JY

John Yi in ClickHouse не тормозит
offtopic
источник

S

Sulaymon in ClickHouse не тормозит
Кто нибудь знает как перемножить два массива со своими элементами ? (prices * quantities)
select
      groupArrayIf(metricValue, metricType='price') as prices,
      groupArrayIf(metricValue, metricType='quantity') as quantities
from ... ;
источник

DT

Dmitry Titov in ClickHouse не тормозит
Sulaymon
Кто нибудь знает как перемножить два массива со своими элементами ? (prices * quantities)
select
      groupArrayIf(metricValue, metricType='price') as prices,
      groupArrayIf(metricValue, metricType='quantity') as quantities
from ... ;
arrayMap((x,y)->x*y,prices,quantities)
источник

S

Sulaymon in ClickHouse не тормозит
Спасибо
источник

S

Sulaymon in ClickHouse не тормозит
Dmitry Titov
arrayMap((x,y)->x*y,prices,quantities)
Получаю 'Arrays passed to arrayMap must have equal size '
если разные длины массива

и пробовал вот такой механизм
      if(length(prices) == length(quantities), arrayMap((p, q) -> p * q, prices, quantities), prices)
но все равно ту же ошибку дает
как можно обойти  ?
источник

K

Kurbat in ClickHouse не тормозит
/stat@combot
источник

C

Combot in ClickHouse не тормозит
Total messages: 208991
источник

DT

Dmitry Titov in ClickHouse не тормозит
Sulaymon
Кто нибудь знает как перемножить два массива со своими элементами ? (prices * quantities)
select
      groupArrayIf(metricValue, metricType='price') as prices,
      groupArrayIf(metricValue, metricType='quantity') as quantities
from ... ;
Тогда вопрос уже к этой части, кто сказал что кх соберет массивы в правильном порядке?
источник

DT

Dmitry Titov in ClickHouse не тормозит
Sulaymon
Получаю 'Arrays passed to arrayMap must have equal size '
если разные длины массива

и пробовал вот такой механизм
      if(length(prices) == length(quantities), arrayMap((p, q) -> p * q, prices, quantities), prices)
но все равно ту же ошибку дает
как можно обойти  ?
но все равно ту же ошибку дает
Потому что if в кх считает обе ветки сразу
источник

S

Sulaymon in ClickHouse не тормозит
что делать тогда ? может есть другой способ перемножение ?
источник

S

Sulaymon in ClickHouse не тормозит
'Arrays passed to arrayMap must have equal size'
пока что решил таким образом:
arrayMap((p, q) -> p * q, prices, arrayResize(quantities, length(prices), 1))
источник

DT

Dmitry Titov in ClickHouse не тормозит
Sulaymon
что делать тогда ? может есть другой способ перемножение ?
Вопрос не в перемножении, а в том, что у вас изначально
groupArrayIf(metricValue, metricType='price') as prices,
groupArrayIf(metricValue, metricType='quantity') as quantities

Здесь собираются значения в массивы без каких либо гарантий что price и quantity будут относится к одному и тому же предмету.
источник

S

Sulaymon in ClickHouse не тормозит
Dmitry Titov
Вопрос не в перемножении, а в том, что у вас изначально
groupArrayIf(metricValue, metricType='price') as prices,
groupArrayIf(metricValue, metricType='quantity') as quantities

Здесь собираются значения в массивы без каких либо гарантий что price и quantity будут относится к одному и тому же предмету.
решаю задачу с заказами:
1)  у всех подстрочных заказах должно быть price и quantity (проверил: оказывается отсутствует некоторые записи по quantity )
2) в sql запросе (price и quantity) группирую по подстрочным заказам что должно гарантировано относится к  одному и тому же подстрочному заказу

b) может я не понял смысл вопроса 'кто сказал что кх соберет массивы в правильном порядке?'
источник

DT

Dmitry Titov in ClickHouse не тормозит
Sulaymon
решаю задачу с заказами:
1)  у всех подстрочных заказах должно быть price и quantity (проверил: оказывается отсутствует некоторые записи по quantity )
2) в sql запросе (price и quantity) группирую по подстрочным заказам что должно гарантировано относится к  одному и тому же подстрочному заказу

b) может я не понял смысл вопроса 'кто сказал что кх соберет массивы в правильном порядке?'
вы делаете  GROUP BY по какому полю?
сколько ожидается элементов в массивах?
источник

S

Sulaymon in ClickHouse не тормозит
orderCreateDate, orderInternalId, metricSectionValue (id подстрочных заказов )
от 1 до 5-6
источник

DT

Dmitry Titov in ClickHouse не тормозит
Sulaymon
orderCreateDate, orderInternalId, metricSectionValue (id подстрочных заказов )
от 1 до 5-6
Вы группируете в два массива некоторые значения, причем для определенного price есть строго соответствующее quantity.
Откуда кх должен понять что этому price соответствует quantity, если они лежат в разных строках?
источник

S

Sulaymon in ClickHouse не тормозит
правильно заметили у определенного price есть строго соответствующее quantity
храню данные в виде
orderInternalId, metricType, metricValue,  metricSectionValue

и группирую по metricSectionValue что говорит о том что price соответствует quantity
источник

DT

Dmitry Titov in ClickHouse не тормозит
Sulaymon
правильно заметили у определенного price есть строго соответствующее quantity
храню данные в виде
orderInternalId, metricType, metricValue,  metricSectionValue

и группирую по metricSectionValue что говорит о том что price соответствует quantity
Хорошо, тогда почему массивы могут быть от 1 до 5-6?
источник