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

Подскажите пожалуйста. По какой причине SummingMergeTree может не суммироватся? Сделал

запись около получаса назад, таблица так и не просуммирована. Не могу чёт отдуплить совсем, гугл тоже не помогает. Хотя в мат. вьюхе всё суммировалось быстро
```CREATE TABLE IF NOT EXISTS lbas_daily
(
date Date,
uuid UUID,
created_at DateTime,
type_name String,
bv Int64
) ENGINE = SummingMergeTree(bv)
PARTITION BY toYYYYMM(date)
ORDER BY (date, uuid);

INSERT INTO lbas_daily
SELECT toDate(sample_time) as date,
uuid,
created_at,
type_name,
1 as bv
FROM lbas
WHERE toDate(sample_time) == yesterday();```

14 ответов

19 просмотров

Если Вы читали документацию, то там написано, что оно суммирует в неизвестный момент времени, а так же ClickHouse может не полностью просуммировать все строки, для этого нужно использовать агрегатную функцию sum и секцию GROUP BY

Lazoreth- Автор вопроса
Vladyslav Sakun
Если Вы читали документацию, то там написано, что ...

Просто материальная вьюха суммировала каждые несколько минут, а тут сутки уже висит

Lazoreth
Просто материальная вьюха суммировала каждые неско...

Движок не гарантирует что все Ваши записи просуммируются

Lazoreth- Автор вопроса
Vladyslav Sakun
Движок не гарантирует что все Ваши записи просумми...

Только не просуммировалась ни одна вообще

Lazoreth
Только не просуммировалась ни одна вообще

Тогда посмотрите на свой Primary Key, он суммирует если одинаковый первичный ключ

Lazoreth
Только не просуммировалась ни одна вообще

Что вы пытаетесь доказать ? Движок работает вот так. Когда-то данные просуммируются, а может и нет.

Lazoreth- Автор вопроса
Mishanya
Что вы пытаетесь доказать ? Движок работает вот та...

Я пытаюсь понять, почему мат вьюха суммировала каждые несколько минут, а обчная таблица не суммирует в течении более чем суток уже

Lazoreth
Я пытаюсь понять, почему мат вьюха суммировала каж...

Вы делаете count(*) - это вообще невалидно для summing таблиц Вы сделали два инсерта по 1 записи - они смержились в одну - каунт вернёт единицу

Lazoreth- Автор вопроса
Mishanya
Вы делаете count(*) - это вообще невалидно для sum...

count(*) показывает как раз таки то, что записи не смерджились в данном случае

Lazoreth
count(*) показывает как раз таки то, что записи не...

Вам же написали, что они могут и не смержиться

Lazoreth
count(*) показывает как раз таки то, что записи не...

Если Вам нужно гарантированно получить сумму в том или ином случае, то ни один движок Вам эту гарантию не даст

Lazoreth- Автор вопроса
Mishanya
Можете написать select * from ... final

Внезапно final помог. Спасибо

Lazoreth
Внезапно final помог. Спасибо

Почитайте про final и optimize Сейчас просто налету мержится. В таблице все равно остались те строки

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта