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 ответов

9 просмотров

Если Вы читали документацию, то там написано, что оно суммирует в неизвестный момент времени, а так же 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 Сейчас просто налету мержится. В таблице все равно остались те строки

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

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

А чем вам питонисты не угодили?😂
.
79
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
75
Ещё такой вопрос. Мне необходимо хранить пароль пользователя локально. Для этого планирую использовать ini файл. Это для автозаполнения полей логин и пароль при авторизации. Е...
Евгений
19
Ты просто гитлеровскую эстетику плохо понимаешь. Он же всё под Цезаря делал. А это как бы запрещённый приём в политике. Пиджаки они зачем все носят? Чтобы показать что они тип...
Ivan Kropotkin
4
Привет, имею проблему с better-sqlite3 модулем. После npm install я делаю ребилд модуля под свою текущую версию ноды с помощью npx electron-rebuild -f -m node_modules/better-s...
Anton Samofal
1
а чем лучше всего сделать глобальный лок, если много нодов, до сотни? ну то есть мне надо, чтобы некоторые операции с объектом не происходили одновременно. перемещение между н...
Д. П.
15
Я вот так сделал, без base. Шаблон text называется, его контроллер: <?php namespace EvolutionCMS\Main\Controllers; use EvolutionCMS\TemplateController; class TextTemplateCo...
Oleg Nosov
1
А как лучше конвертировать физический адрес в виртуальный при маппинге? В случае ядра у меня, например, direct mapping, первые 768МБ я как есть мапплю в higher half, а остальн...
Evg Resh
26
Hi guys, I'm looking for a good LLM course. Is there any course to learn LLMs in advanced? I'm aiming to use them in my apps, so a perfect course in my openion, is not only a ...
Taha
14
База данных не поможет. Шифрование не поможет. Какие там ещё варианты? Накидывайте.
КТ315
20
Карта сайта