Flink инкрементная контрольная точка, будет ли Flink автоматически удалять старый файл контрольных точек? - PullRequest
0 голосов
/ 20 сентября 2019

Для инкрементальной контрольной точки Flink, если я правильно понимаю, она сначала создаст полную контрольную точку, затем создаст инкрементную контрольную точку каждый раз на основе предыдущей.

Будет ли эта цепочка слишком длинной?Нужно ли будет подавать заявку с самого первого полного контрольного пункта при восстановлении?

Я слышал, что Flink будет периодически выполнять уплотнение / слияние, означает ли это, что он будет периодически создавать полную контрольную точку, чтобы нам не нужно было переходить к очень старой полной контрольной точке во время восстановления?Если да, когда произойдет сжатие / слияние?

И еще один вопрос: сохраняет ли Flink все файлы контрольных точек (включая полные и инкрементные)?Или он автоматически удаляет некоторые просроченные?

Спасибо.

1 Ответ

0 голосов
/ 20 сентября 2019

Фон: добавочная контрольная точка в Flink в настоящее время поддерживается только бэкэндом состояния RocksDB, который выполняет большую часть тяжелой работы.RocksDB основан на лог-структурированных деревьях слияний, которые естественным образом поддерживают добавочные контрольные точки.

Для введения в RocksDB см. https://github.com/facebook/rocksdb/wiki/RocksDB-Basics.

Теперь ваши вопросы:

Цепочка ограничена по длине числом уровней, используемых в RocksDB.Поскольку размер каждого уровня, как правило, кратен размеру предыдущего уровня, для хранения большого количества данных не требуется очень длинной цепочки.«Исходная контрольная точка» не является монолитом - она ​​содержит состояние, хранящееся на нескольких уровнях дерева LSM и хранящееся в наборе файлов SST, - и как только начинается сжатие, исходная контрольная точка больше не существует каким-либо распознаваемым образом.

Уплотнение - это просто часть работы RocksDB;это не что-то реализованное или для Flink.Сжатие происходит более или менее непрерывно в фоновом режиме.

Flink позаботится об автоматическом удалении файлов SST (контрольная точка содержит набор файлов SST), которые больше не нужны.

См. Управление большим состоянием в Apache Flink: введение в инкрементную контрольную точку для получения дополнительной информации.

...