Lëshimi i DBMS DuckDB 1.4.0 me mbështetje për enkriptimin e DB-së.

Опубликован выпуск СУБД DuckDB 1.4.0, ориентированной на выполнение аналитических запросов и концептуально напоминающей SQLite. DuckDB сочетает такие свойства SQLite, как компактность, подключение в форме встраиваемой библиотеки, хранение БД в одном файле и CLI-интерфейс, с возможностями и оптимизациями для выполнения аналитических запросов, охватывающих значительную часть хранимых данных, например, выполняющих агрегирование всего содержимого таблиц или слияние нескольких больших таблиц. Код проекта написан на языке C++ и распространяется под лицензией MIT.

DuckDB предоставляет расширенный диалект языка SQL, включающий дополнительные возможности для обработки очень сложных и длительно выполняемых запросов. Возможно использование сложных типов (массивы, структуры, объединения), а также выполнение произвольных и вложенных коррелирующих подзапросов. Поддерживается одновременное выполнение нескольких запросов, выполнение запросов напрямую из файлов в форматах CSV и Parquet. Доступна поддержка импорта из СУБД PostgreSQL.

Projekti përdor një mbështjellës nga SQLite, parserin nga PostgreSQL, komponentin Date Math nga MonetDB, realizimin e tij të funksioneve dritare (të bazuar në algoritmin Segment Tree Aggregation), një procesor për shprehje të rregullta të bazuar në bibliotekën RE2, optimizuesin e tij të kërkesave, mekanizmin MVCC për menaxhimin e ekzekutimit të përbashkët të detyrave (Multi-Version Concurrency Control), si dhe një motor të vectorizuar për ekzekutimin e kërkesave të bazuar në algoritmin Hyper-Pipelining Query Execution, i cili lejon përpunimin në një operacion të grupeve të mëdha të vlerave njëherësh.

Në versionin e ri:

  • Добавлена поддержка хранения файлов БД в зашифрованном виде. Для шифрования используется алгоритм AES-256 в режиме GCM. Шифруется не только основной файл с данными, но и WAL-логи и временные файлы. Ключи для шифрования БД задаются командой ATTACH через параметр ENCRYPTION_KEY. ATTACH ‘encrypted.db’ AS enc_db (ENCRYPTION_KEY ‘quack_quack’);
  • Добавлена поддержка команды «MERGE INTO», которая может применяться как альтернатива выражению «INSERT … ON CONFLICT», не требующая первичного ключа и работающая с произвольными условиями слияния. Команда «MERGE INTO» позволяет создавать условные SQL-выражения, объединяющие в одном выражении операции INSERT, UPDATE и DELETE. Например, при помощи MERGE можно организовать слияние двух таблиц, вставляя недостающие записи и обновляя существующие. WITH deletes(item_id, delete_threshold) AS (VALUES (10, 3000)) MERGE INTO Stock USING deletes USING (item_id) WHEN MATCHED AND balance < delete_threshold THEN DELETE RETURNING merge_action, *;
  • В дополнение для работы с таблицам в формате Apache Iceberg добавлена поддержка операций записи (ранее поддерживалось только чтение), что позволяет переносить данные из Iceberg в DuckDB и обратно.
  • В клиент командной строки добавлен индикатор прогресса выполнения операции с прогнозированием времени, оставшегося до завершения.
  • Добавлена оконная функция «FILL», которую можно использовать для интерполяции пропущенных значений в упорядоченных окнах. FROM (VALUES (1, 1), (2, NULL), (3, 42)) t(c1, c2) SELECT fill(c2) OVER (ORDER BY c1) f; 1 21 42
  • Реализовано дополнение Teradata Connector для подключения к базам данных Teradata. Дополнение позволяет манипулировать таблицами, выполнять запросы и запускать SQL-команды напрямую в Teradata, используя DuckDB.
  • Добавлена поддержка фиксации состояния (checkpoint) таблиц, хранимых в памяти, что позволило реализовать поддержку сжатия. Кроме того, при фиксации состояния выполняется чистка удалённых строк и высвобождение места после операций удаления. ATTACH ‘:memory:’ AS memory_compressed (COMPRESS);
  • Предложено несколько оптимизаций производительности: Реализация сортировки переведена на использование алгоритма многопутевого слияния (k-way merge sort), сокращающего перемещение данных. Обобщённые табличные выражения (Common Table Expression, CTE) теперь материализуются по умолчанию.

Burimi: opennet.ru

Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы 🔥 Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы | ProHoster