2 реплики, в нем есть таблица, replicatedmergetree над этой таблицей строится материальная вьюшка на каждой реплике и уже на эти вьюшки смотрит дистрибутед, вопрос вот в чем, проходили работы на железе и выключались реплики на несколько дней, после включения исходная табличка догналась данными, а вот материальная вьюшка нет, что делать? Данных хулиярг и небольшая тележка пересоздавать вьюшку не вариант, есть какието альтернативные методы. В связи с этой проблемой возникает другой вопрос, если данные на сервер приходят не через запрос а через репликацию, они попадает во вьюшку или нет? CH v.21.3.12.2
Надо было materialized view делать с TO db.another_replicated_mergetree_table выражением а так у вас похоже обычные MergeTree внутри MV созданы POPULATE делать не вариант можно попробовать руками данные догнать INSERT INTO db.inner_таблица_из_mv SELECT ... FROM db.исходная_replicated_tree WHERE (тут грамотно подобрать условие чтобы повторно данные не вставить) GROUP BY ... имя inner Таблицы смотрите через SHOW TABLES
CREATE MATERIALIZED VIEW mv_table ENGINE = SummingMergeTree(…) AS SELECT … FROM source_table вот так создавалось
ну значит создали локальную inner таблицу внутри mv_table SHOW TABLES посмотрите...
Обсуждают сегодня