Megjelent a DuckDB 1.4.0 adatbázis-kezelő rendszer titkosítási támogatással

Megjelent a DuckDB 1.4.0 verziója, amely az analitikai lekérdezések végrehajtására összpontosít, és koncepcionálisan hasonlít a SQLite-ra. A DuckDB ötvözi a SQLite olyan tulajdonságait, mint a kompakt méret, az integrálható könyvtárként való csatlakozás, az adatbázis egy fájlban való tárolása és a parancssori felület, valamint a lekérdezések végrehajtásához szükséges lehetőségeket és optimalizálásokat kínál, amelyek jelentős mennyiségű tárolt adatot fednek le, például az egész táblák tartalmának aggregálásával vagy több nagy tábla összefésülésével. A projekt kódja C++ nyelven íródott és MIT licenc alatt terjesztik.

A DuckDB kiterjesztett SQL-dialektust biztosít, beleértve a nagyon bonyolult és hosszú ideig tartó lekérdezések kezelésére vonatkozó további lehetőségeket. Lehetséges bonyolult típusok (tömbök, struktúrák, uniók) használata, valamint tetszőleges és beágyazott korrelált alminták végrehajtása. Támogatott a több lekérdezés egyidejű végrehajtása, lekérdezések közvetlen végrehajtása CSV és Parquet formátumú fájlokból. Továbbá, támogatja a PostgreSQL adatbázisból való importálást.

A projekt SQLite alapú héjat, PostgreSQL-ből származó elemzőt, MonetDB-ből származó Date Math komponenst, saját megvalósítású ablakos függvényeket (Segment Tree Aggregation algoritmus alapján), RE2 könyvtáron alapuló reguláris kifejezések feldolgozóját, saját lekérdezés-optimalizálót, MVCC (több verziós párhuzamos végrehajtás) rendszert, valamint a Hyper-Pipelining Query Execution algoritmust alapul vevő vektorozott lekérdezés végrehajtó motorját használja, amely lehetővé teszi, hogy egyetlen művelet során nagy értékhalmazokat egyszerre dolgozzon fel.

Az új verzióban:

  • Hozzáadva a támogatás az adatbázis fájlok titkosított tárolásához. A titkosításhoz AES-256 algoritmust használnak GCM módban. Nemcsak az alapadat-fájlokat titkosítják, hanem a WAL-naplókat és ideiglenes fájlokat is. Az adatbázis titkosításához szükséges kulcsokat az ATTACH parancs segítségével, az ENCRYPTION_KEY paraméterrel lehet megadni. ATTACH 'encrypted.db' AS enc_db (ENCRYPTION_KEY 'quack_quack');
  • Hozzáadva a "MERGE INTO" parancs támogatása, amely alternatívaként alkalmazható az "INSERT … ON CONFLICT" kifejezéshez, nem igényel elsődleges kulcsot, és tetszőleges egyesítési feltételekkel működik. A "MERGE INTO" parancs lehetővé teszi feltételes SQL-kifejezések létrehozását, amelyek egy kifejezésben egyesítik az INSERT, UPDATE és DELETE műveleteket. Például a MERGE segítségével két tábla egyesítése szervezhető, hiányzó rekordok beszúrásával és a meglévők frissítésével. 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, *;
  • Továbbá az Apache Iceberg formátumú táblák kezeléséhez a korábbi csak olvasási támogatás mellett a írási műveletek támogatása is hozzáadva lett, lehetővé téve az adatok átvitelét Iceberg és DuckDB között.
  • A parancssori klienshez hozzáadva egy folyamat előrehaladását jelző mutató, amely megjeleníti a hátralévő időt a művelet befejezéséig.
  • Hozzáadva a "FILL" ablakos függvény, amelyet hiányzó értékek interpolálására lehet használni rendezett ablakokban. FROM (VALUES (1, 1), (2, NULL), (3, 42)) t(c1, c2) SELECT fill(c2) OVER (ORDER BY c1) f; 1 21 42
  • Megvalósítva a Teradata Connector kiegészítő, amely lehetővé teszi a Teradata adatbázisokhoz való csatlakozást. A kiegészítő lehetővé teszi a táblák manipulálását, lekérdezések végrehajtását és SQL-parancsok futtatását közvetlenül a Teradata-ban a DuckDB használatával.
  • Hozzáadva a memóriában tárolt táblák állapotának rögzítése, ami lehetővé tette a tömörítés támogatását. Ezenkívül az állapot rögzítésekor eltávolított sorok takarítása és hely felszabadítása történik a törlési műveletek után. ATTACH ‘:memory:’ AS memory_compressed (COMPRESS);
  • Több teljesítményoptimalizálás javasolt: A rendezési megvalósítás áttért a többutas egyesítés (k-way merge sort) algoritmus használatára, csökkentve az adatok mozgatását. Az általános táblázatos kifejezések (Common Table Expression, CTE) most alapértelmezetten materializálva vannak.

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster