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

Всем привет!) подскажите плз, если мы создаем мат вью с

движком MergeTree обращаясь к распределенной таблице - почему мат вью может не обновляться? мне кажется я где то видел, что мат вью должны работать без проблем с распределенными таблицами как и с обычными, но у меня почему то данные не обновляются

вот DDL создания мат вью) буду признателен за помощь)

CREATE MATERIALIZED VIEW log.adv_spendings_view
ENGINE = MergeTree()
PARTITION BY toYYYYMM(event_date)
ORDER BY event_time
SETTINGS index_granularity = 8192 POPULATE AS
SELECT
event_time,
event_date,
kiss__adv_spendings_justcontrolit__adv_plt AS adv_plt,
kiss__adv_spendings_justcontrolit__adset_name AS adset_name,
kiss__adv_spendings_justcontrolit__campaign AS campaign,
kiss__adv_spendings_justcontrolit__campaign_start AS campaign_start,
kiss__adv_spendings_justcontrolit__campaign_finish AS campaign_finish,
kiss__adv_spendings_justcontrolit__cost AS cost,
kiss__adv_spendings_justcontrolit__impressions AS impressions,
kiss__adv_spendings_justcontrolit__clicks AS clicks,
kiss__adv_spendings_justcontrolit__downloads AS downloads
FROM log.kiss
WHERE event = 'kiss__adv_spendings_justcontrolit'
AND event_date >= '2020-01-01'

8 ответов

14 просмотров

в момент создания MV данные из log.kiss подтянулись в lo.adv.spending_view ? POPULATE отработал?

Обновление данных срабатывает только на insert, либо при создании с указанием populate

Алексей-Веселов Автор вопроса
Slach [altinity]
в момент создания MV данные из log.kiss подтянулис...

Populate да отработал без проблем - данных там прям немного

Алексей-Веселов Автор вопроса
Slach [altinity]
ок. вы вставляете в distributed таблицу?

у нас есть другая таблица log.events - вобще данные вставляются в нее, а log.kiss - дистрибьютед таблица и пока что запись не переключили в нее как я понял

Алексей Веселов
у нас есть другая таблица log.events - вобще данны...

более того log.kiss НИЧЕГО не знает про вставки в log.events, он вообще даже не знает есть ли такая таблица на самом деле и какая там у нее под капотом логика потому что при SELET из log.kiss просто происходит иницализация нескольких паралельных дочерних SELECT запросов читающих из log.events

Алексей-Веселов Автор вопроса
Slach [altinity]
более того log.kiss НИЧЕГО не знает про вставки в ...

а можете плз подсказать бест практис при создании мат вью если у нас распределенная таблица ? в таком случае надо отдельно на каждом сервере создавать мат вью ? а можем мы потом как то объединить эти данные в третью мат вью ?

Алексей Веселов
а можете плз подсказать бест практис при создании ...

сделайте MV на log.events на всех серверах сделайте обычную Distributed таблицу поверх этого MV и читайте из нее вставляйте в log.events нет best practice есть либо понимание того как движки таблиц работают либо отсутствие такового =)

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

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

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно 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
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта