184 похожих чатов

Привет. Забираю данные с кафки и пишу в таблицу CREATE TABLE

device_os_queue (
device_os String,
os Int8,
stop timestamp,
min_time timestamp,
max_time timestamp,
count UInt32,
cnt UInt32,
time UInt64
) ENGINE = Kafka('10.0.3.10:9092', 'device_os', 'group1', 'JSONEachRow');
CREATE TABLE device_os_1d (
device_os String,
os Int8,
stop timestamp,
min_time AggregateFunction (min, DateTime('Europe/Moscow')),
max_time AggregateFunction (max, DateTime('Europe/Moscow')),
count SimpleAggregateFunction (sum, UInt64),
cnt SimpleAggregateFunction (sum, UInt64),
time SimpleAggregateFunction (sum, UInt64)
) ENGINE = AggregatingMergeTree()
PARTITION BY toDate(toDateTime(stop))
ORDER BY (device_os, os, stop);
CREATE MATERIALIZED VIEW device_os TO device_os_1d
AS SELECT device_os, os, toDate(toDateTime(stop)) AS stop, minState(toDateTime(min_time)) AS min_time, maxState(toDateTime(max_time)) AS max_time, toUInt32(sum(count)) AS count, toUInt32(sum(cnt)) AS cnt, sum(time) AS time
FROM device_os_queue GROUP BY device_os, os, stop;

Все ок, кроме агрегации min_time и max_time

┌─device_os─────┬─os─┬────────────────stop─┬─min_time─┬─max_time─┬─count─┬─cnt─┬─time─┐
│ Mac OS 10.9.5 │ 0 │ 2020-01-01 00:00:00 │ S�
^ │ ��
^ │ 5 │ 0 │ 0 │
└───────────────┴────┴─────────────────────┴──────────┴──────────┴───────┴─────┴──────┘
Как правильно преобразовывать?

3 ответов

9 просмотров

ну minMerge НО !!!!! ВАМ ЭТО НЕ НУЖНО ВАМ НУЖНО, используйте SimpleAggregateFunction min_time SimpleAggregateFunction (min, DateTime('Europe/Moscow')), max_time SimpleAggregateFunction (max, DateTime('Europe/Moscow')),

Yarlan-Zey Автор вопроса
Denny [Altinity]
ну minMerge НО !!!!! ВАМ ЭТО НЕ НУЖНО ВАМ НУЖНО, ...

про minMerge дошел да, за Simple спасибо. такая большая разница в производительности?

Yarlan Zey
про minMerge дошел да, за Simple спасибо. такая бо...

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

Похожие вопросы

Обсуждают сегодня

Типа вызывать GetParent и проверять на соответствие GetModuleHandle?
The Bird of Hermes
67
Do any of you guys have interesting projects one could join? I'm a Middle Full-Stack developer (JS/TS, React & Node)
Lev Shapiro
40
$res = json_decode($наша строка из респонса); $res1 = array_map(fn($o) => $o->name, $res->breadcrumbs[0]->entities); Как такое будет на Хаскеле?.. В начале весь джейсон, в ко...
Хаскель Моисеевич Гопник
25
В чем сила брат, в NASM или FASM?
Isaac Kleiner
18
Вопрос по диагностике ошибок (я знаю в чем, в данном конкретном примере, я знаю, как исправить, пример модельный, понятно, что в реальности бывает намного запутаннее). module...
ⰄⰎⰋⰐⰐⰑⰛⰤⰧⰧⰩⰄ ⰊⰑⰁⰓⰡⰛⰦⰕⰫ
10
Хтось використовував Vapor на Windows?
Jaroshevskii
15
Тут кста кто-нибудь NeoVim использует?
Simple Sorcerer
13
А чем вам питонисты не угодили?😂
.
79
Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
52
у меня вопрос на счет .global <name> для чего это нужно если я пишу на ассемблере? только для того что бы сделать это видимым для линкера? вот что написано в докумментации GA...
Simple Sorcerer
1
Карта сайта