DuckDB 1.4.0 andmebaasi vĂ€ljalase, millel on krĂŒptimise tugi.

Avaldati DuckDB andmebaasi uus versioon 1.4.0, mis on suunatud analĂŒĂŒtiliste pĂ€ringute tĂ€itmisele ja mille kontseptsioon meenutab SQLite't. DuckDB ĂŒhendab endas SQLite omadused, nagu kompaktne suurus, integreeritav teegivorming, andmebaasi salvestamine ĂŒhte faili ning CLI-liides, koos nende vĂ”imaluste ja optimeeringutega, et teostada analĂŒĂŒtilisi pĂ€ringuid, mis katab suure osa salvestatud andmetest, nĂ€iteks kogudes kokku kĂ”igi tabelite sisu vĂ”i ĂŒhendades mitu suurt tabelit. Projekti kood on kirjutatud C++ keeles ja see on litsentseeritud MIT litsentsi alusel.

DuckDB pakub laiendatud SQL keele dialekti, mis sisaldab tĂ€iendavaid vĂ”imalusi vĂ€ga keeruliste ja pikaajaliste pĂ€ringute seadmiseks. Toetatakse keeruliste tĂŒĂŒpide (massivid, struktuurid, ĂŒhendused) kasutamist, samuti vĂ”imalust teostada omavahelisi ja sisse-vĂ€lja korreleeruvaid alam-pĂ€ringuid. Samuti on lubatud mitme pĂ€ringu samaaegne tĂ€itmine ning pĂ€ringute kĂ€ivitamine otse CSV ja Parquet formaadis failidest. Toetatakse ka andmete importimist PostgreSQL andmebaasidest.

Projekt kasutab SQLite'i paketti, PostgreSQL'i parserit, MonetDB Date Math komponenti, enda aknafunktsioonide rakendust (Segment Tree Aggregation algoritmil pĂ”hinev), RE2 raamatukogul pĂ”hinevat regulaarsete vĂ€ljendite töötlejat, enda pĂ€ringute optimeerijat, MVCC-mehhanismi (Multi-Version Concurrency Control) tĂ€itmise juhtide haldamiseks, samuti vektoreeritud pĂ€ringute tĂ€itmise mootori Hyper-Pipelining Query Execution algoritmil, mis vĂ”imaldab ĂŒhes operatsioonis kiiresti töödelda suuri vÀÀrtuste komplekte.

Uues versioonis:

  • Lisatud tugi andmefailide salvestamiseks krĂŒptitud kujul. KrĂŒptimiseks kasutatakse AES-256 algoritmi GCM reĆŸiimis. KrĂŒptitakse mitte ainult pĂ”hifail andmete, vaid ka WAL-logide ja ajutiste failide. KrĂŒptimisvĂ”tmed mÀÀratakse kĂ€sku ATTACH kaudu parameetriga ENCRYPTION_KEY. ATTACH 'encrypted.db' AS enc_db (ENCRYPTION_KEY 'quack_quack');
  • Lisatud on kĂ€sk «MERGE INTO», mida saab kasutada alternatiivina vĂ€ljendile «INSERT 
 ON CONFLICT», mis ei vaja pĂ”hivĂ”tit ja töötab suvaliste liitumistingimustega. KĂ€sk «MERGE INTO» vĂ”imaldab luua tingimuslikke SQL-vĂ€ljendeid, mis ĂŒhendavad ĂŒhes vĂ€ljendis INSERT, UPDATE ja DELETE toimingud. NĂ€iteks saab MERGE abil korraldada kahe tabeli ĂŒhendamist, lisades puuduvad kirjed ja vĂ€rskendades olemasolevaid. 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, *;
  • Lisaks on Apache Icebergi formaadis tabelitega tegelemiseks lisatud kirjutusoperatsioonide tugi (varasemalt toetati ainult lugemist), mis vĂ”imaldab andmete edastamist Icebergist DuckDB-sse ja tagasi.
  • KĂ€surea kliendisse on lisatud tööprotsessi edenemise nĂ€idik, mis ennustab jÀÀkaja kuni toimingu lĂ”puni.
  • Lisatud on aknafunktsioon «FILL», mida saab kasutada korraldatud akendes puuduolevate vÀÀrtuste interpoleerimiseks. FROM (VALUES (1, 1), (2, NULL), (3, 42)) t(c1, c2) SELECT fill(c2) OVER (ORDER BY c1) f; 1 21 42
  • Rakendatud on Teradata Connectori lisand, mis vĂ”imaldab ĂŒhendada Teradata andmebaasidega. Lisand vĂ”imaldab hallata tabeleid, edastada pĂ€ringuid ja kĂ€ivitada SQL-kĂ€ske otse Teradatasse, kasutades DuckDB-d.
  • Lisatud on mĂ€lu talletatavate tablettide seisundi fikseerimise (checkpoint) toetus, mis vĂ”imaldas sisse viia ka tiheduse toetuse. Lisaks toimub fikseerimise kĂ€igus kustutatud ridade puhastamine ja ruumi vabastamine pĂ€rast kustutamisoperatsioone. ATTACH ‘:memory:’ AS memory_compressed (COMPRESS);
  • Pakutud on mitmeid jĂ”udluse optimeerimise abinĂ”usid: Sortimise elluviimine on ĂŒleviidud mitmerealise sulandamise algoritmi (k-way merge sort) kasutamise peale, mis vĂ€hendab andmete liikumist. Üldised tabeli vĂ€ljendid (Common Table Expression, CTE) materialiseeritakse nĂŒĂŒd vaikesĂ€tetena.

Allikas: opennet.ru

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster