TTL (настраиваемое время хранения) данных в таблицах ClickHouse и в отдельных столицах

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
Компания Яндекс
Учебный семестр Осень 2018
Учебный курс 3-4-й курс
Максимальное количество студентов, выбравших проект: ?



Есть потребность настроить время жизни данных в таблице (пример: храним логи 10 дней), а также отдельных столбцов в таблице (пример: храним данные вечно, но IP адрес удаляем через сутки).

Технической сложностью данной задачи является то, что данные в ClickHouse хранятся в виде неизменяемых кусков. Удалить что-то из куска данных невозможно; можно только создать новый кусок данных и заменить им старый, или же просто удалить кусок целиком. Такие операции в ClickHouse уже производятся - это слияния сортированных кусков в фоне. Для решения задачи, потребуется назначать эти слияния с учётом TTL.