Скрипт обновляет статусы заказов в ClickHouse по одной строке и работает часами
Аналитик перенёс витрину заказов в ClickHouse и написал скрипт, который при каждом изменении статуса заказа делает ALTER TABLE orders UPDATE status = ... WHERE order_id = .... Таких изменений — сотни тысяч в день, скрипт не успевает, база нагружена.
Как правильно работать с изменяющимися данными в ClickHouse?
- Дописывать новые версии строк и брать последнюю при чтении
- Выполнять те же UPDATE пачками по 10 штук
- Удалять строку и вставлять заново после каждого изменения
- Перенести обновления на ночь одним большим UPDATE на каждую строку
