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

День добрый. А подскажите, пожалуйста, есть ли готовое решение при

бэкапе методом фриза партиций. Проверить, что в этот момент не идет вставка в партицию? Проверять processlist на предмет Insert и system.replication_queue'?

5 ответов

21 просмотр

а зачем вам проверять что идет вставка в партицию? freeze создает hardlink только на вставленные парты в партиции на момент старта freeze все что попадет позже просто не войдет в бекап... чего именно вы хотите добиться такой проверкой?

Dmitriy-S Автор вопроса
Slach [altinity]
а зачем вам проверять что идет вставка в партицию?...

у нас есть большая таблица Insert Only с партами по неделе и раз в неделю хочется ее бэкапить и быть уверенным, что бэкап будет консистентным и не делался в момент, когда эту партицию перенаполняли из источника или был большой лаг на реплике или другие непредвиденные сценарии.

Dmitriy S
у нас есть большая таблица Insert Only с партами ...

Вы не можете перенаполнять эту партицию в другую таблицу и потом просто делать ALTER TABLE REPLACE PARTITION ?

Dmitriy-S Автор вопроса
Dmitry [Altinity] Titov
Вы не можете перенаполнять эту партицию в другую т...

в таком случае не нужно бэкапить текущую исходную таблицу. А в скрипте хочется все предусмотреть и если партиция "занята", то отложить выполнение, например, на сутки

Dmitriy S
у нас есть большая таблица Insert Only с партами ...

по вашему сообщению не очень понятно вы различаете парты и партиции? чтобы избежать большого лага по реплике, в clickhouse-backup делается для Replicated таблиц SYSTEM SYNC REPLICA с настраиваемым timeout ну и вы никак не можете избежать ситуации когда в эту эту таблицу будет вставка после начала FREEZE ... поэтому непонятно все таки чего именно вы пытаетесь избежать понятие "консистентности" в clickhouse eventually (консистеность при отсутвии вставок когда нибудь будет достигнута) транзакций нет... только "атомарные" вставки и "аторманые" мержи в бекграунде...

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

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

$params = [ 'formid' => 'feedbackForm', 'formTpl' => '@CODE: <form class="form-validate" data-id="ajax_form"> <fieldset class="margin-bottom-md"> ...
Pathologic
1
И ещё вопрос: можно ли типа как на дос как-то запариться и с помощью прерываний выводить текст, вместо функции printf ?
НѣкъиⰘижєжєиꙁъвьсєсвѣтьноѣсѣтиѥсть•
34
окей, дело реально в org было. но что за мусор в конце?
Vi Chapmann
15
Ладно, ещё тупого спрошу. Код должен банально вывести значение регистра на консоль, на деле же не выводя ничего, просто оставляя нерабочую консоль (открыта, ничего не написан...
НѣкъиⰘижєжєиꙁъвьсєсвѣтьноѣсѣтиѥсть•
25
Есть тут крутые SQL-маньяки (в частности postgresql)? Нужна помощь, совет, что-то всю голову сломал, не могу придумать как реализовать нужное. Есть вот такой набор данных: f...
Alex
11
здравствуйте. пытаюсь проверить, содержится ли в десятичном представлении инта некоторая цифра. совершаю: strstr(x, "5") != NULL) получаю ошибку с фото (заведомо неработающий ...
Катя Шевчук🪇
18
Что там вообще с кроссплатформенностью?
🄼🄰🄺🅉🄰🄸
23
Ребят, а вот такой вопрос: если я владелец бота анонимного чата, в котором, например, имеются подписки, используя какую-нибудь ЮКассу (или тому подобное, в общем с налогами, в...
Eugene Неелов
8
Доброй ночи. Вопрос знатокам. Имеется некая таблица, результат которой выведен в DBGrid на форме. И есть форма, с помощью которой можно как добавить запись, так и отредактиров...
Евгений
28
а всё почему? потому что ассемблер в отличии от яву порождает множество пагубных привычек, среди которых например можно отметить использование глобальных переменных для всего ...
Mixail Frolov
35
Карта сайта