Огляд DuckDB 1.4: Нові можливості та покращення

Огляд DuckDB 1.4: Нові можливості та покращення

DuckDB, відкритий, вбудований аналітичний database, часто описуваний як “SQLite для аналітики”, оголосив про випуск версії 1.4 з кодовою назвою “Andium”. Це LTS реліз, що забезпечує річну підтримку спільноти.

Підтримка шифрування бази даних

Однією з найзначніших нових можливостей є підтримка шифрування бази даних. DuckDB тепер підтримує AES-256 в режимі GCM, що покриває основний файл бази даних, WAL та навіть тимчасові файли.

Ключі шифрування передаються через параметр ENCRYPTION_KEY до ATTACH. Функція може працювати на вбудованій бібліотеці mbedtls, але реалізація OpenSSL є швидшою завдяки апаратному прискоренню.

Гнучкість за рахунок нових команд SQL

Ще одна ключова можливість – підтримка SQL команди MERGE INTO. Замість використання лише INSERT INTO … ON CONFLICT, DuckDB тепер дозволяє виконувати гнучкі апсерти та видалення з використанням власних умов зіставлення.

Оновлення зберігання даних

На стороні зберігання, розширення duckdb-iceberg тепер підтримує запис у Iceberg, а не тільки читання з нього. Крім того, користувачі можуть копіювати дані між DuckDB, DuckLake та Iceberg. Однак схеми необхідно створювати вручну на стороні Iceberg перед записом даних.

Інші важливі оновлення включають прогрес-бар CLI з ETA, нову віконну функцію FILL для інтерполяції відсутніх значень, а також конектор Teradata.

Покращення продуктивності DuckDB

В останньому оновленні продуктивності впроваджено новий підхід до сортування, що використовує метод k-way merge. CTE тепер за замовчуванням матеріалізуються, а в пам’яті таблиці отримали контрольні точки з опціональним стисненням.

Оновлення дистрибутиву DuckDB

Серед дистрибутивних оновлень – сертифікація macOS для бінарних файлів та перенесення інтеграції Python до окремого репозиторію duckdb/duckdb-python.

Детальнішу інформацію можна знайти на офіційному сайті DuckDB.