Команда DuckDB представила DuckLake 1.0 — новый формат Data Lake, который хранит таблицы с метаданными в SQL-базе. Это решение исключает необходимость использования множества файлов в облачном хранилище и позволяет упростить производительность при работе с данными.
Почему важна новинка
Формат DuckLake 1.0, доступный как расширение DuckDB, обеспечивает внутреннее хранилище для метаданных. Это решает проблемы, связанные с координацией файлов и низкой производительностью операций с метаданными, свойственные таким форматам, как Apache Iceberg, Delta Lake и Apache Hudi. Как показывает практика, внедрение SQL-базы для хранения метаэтих значительно улучшает обработку данных.
Основные функции DuckLake 1.0
В составе DuckLake 1.0 реализованы улучшенные функции для работы с данными, такие как:
- Data inlining, позволяющий обрабатывать небольшие вставки, обновления и удаления без создания новых файлов;
- Улучшенная сортировка таблиц для ускорения фильтрации;
- Поддержка высокоразмерных колонок через разбиение на чанки;
- Совместимость с вектором удаления, как у Iceberg.
Особенность data inlining позволяет избежать проблемы с множеством мелких файлов, что часто встречается в других lakehouse-решениях. Эта функция активируется по умолчанию и имеет предельное значение в 10 строк для обновлений.
Как это связано с рынком
Для разработчиков Data Lake в России DuckLake предлагает более эффективное решение, чем его конкуренты. Это значит, что за счет уменьшения накладных расходов по метаэтим можно значительно повысить производительность систем, обрабатывающих большие объемы данных. Если ваша команда занимается обработкой данных, стоит рассмотреть возможности, которые открывает DuckLake, для улучшения своей базы данных.
Следующим шагом в развитии продукта станет релиз DuckLake 1.1, где запланировано добавить поддержку вариативной вставки и улучшенные механизмы работы с удалениями.