Чтобы поправить одну строку в parquet, обычно приходится переписывать файл целиком. В 2026 году это всё ещё повседневность большинства озёр данных: сам по себе parquet не умеет ни UPDATE, ни ROLLBACK, а пайплайн, упавший на середине записи, может оставить в озере недописанные файлы и несогласованное состояние. Поэтому появились Iceberg и Delta Lake. Они добавляют поверх parquet транзакционный слой, но за это платишь: метаданные размазаны по множеству служебных файлов на S3, и в эксплуатации часто появляется ещё и отдельный каталог, за которым нужно следить. Команда DuckDB предложила другой путь и выпустила DuckLake. Данные так и лежат в parquet, а все метаданные живут в обычной реляционной базе, хоть в SQLite, хоть в PostgreSQL. Подключается всё одной командой ATTACH: INSTALL ducklake; ATTACH 'ducklake:sqlite:metadata.sqlite' AS lake (DATA_PATH 'data/'); Каждая закоммиченная транзакция создаёт снапшот, поэтому из коробки получаешь UPDATE, MERGE, ACID и time travel. Даже после DELET