Prezantohet lëshimi i DuckDB 0.10.0 DBMS, duke kombinuar vetitë e tilla të SQLite si kompaktësia, aftësia për t'u lidhur në formën e një biblioteke të ngulitur, ruajtjen e bazës së të dhënave në një skedar dhe një ndërfaqe të përshtatshme CLI, me mjete dhe optimizime për ekzekutim pyetje analitike që mbulojnë një pjesë të konsiderueshme të të dhënave të ruajtura, për shembull që grumbullojnë të gjithë përmbajtjen e tabelave ose bashkojnë disa tabela të mëdha. Kodi i projektit shpërndahet nën licencën MIT. Zhvillimi është ende në fazën e formimit të lëshimeve eksperimentale, pasi formati i ruajtjes ende nuk është stabilizuar dhe ndryshon nga versioni në version.
DuckDB ofron një dialekt të avancuar SQL që përfshin aftësi shtesë për trajtimin e pyetjeve shumë komplekse dhe që kërkojnë kohë. Mbështetet përdorimi i llojeve komplekse (vargje, struktura, bashkime) dhe aftësia për të ekzekutuar nënpyetje arbitrare dhe të ndërlidhura. Ai mbështet ekzekutimin e shumë pyetjeve në të njëjtën kohë, ekzekutimin e pyetjeve direkt nga skedarët CSV dhe Parquet. Është e mundur të importohet nga PostgreSQL DBMS.
Përveç kodit të guaskës nga SQLite, projekti përdor një analizues nga PostgreSQL në një bibliotekë të veçantë, komponentin Date Math nga MonetDB, zbatimin e tij të funksioneve të dritares (bazuar në algoritmin e grumbullimit të pemëve të segmentit), një procesor shprehjeje të rregullt bazuar në biblioteka RE2, optimizuesi i saj i pyetjeve dhe një mekanizëm kontrolli MVCC ekzekutimi i njëkohshëm i detyrave (Kontrolli i konkurencës me shumë versione), si dhe një motor ekzekutimi i pyetjeve të vektorizuar bazuar në algoritmin Hyper-Pipelining Query Execution, i cili lejon grupe të mëdha vlerash të përpunohen menjëherë në një operacion.
Ndër ndryshimet në versionin e ri:
- Performanca e analizimit të të dhënave në formatin CSV është përmirësuar ndjeshëm. Për shembull, leximi i një skedari CSV me 11 milionë rreshta në versionin e ri u reduktua nga 2.6 sekonda. deri në 1.15 sekonda dhe duke kryer operacionin "SELECT COUNT(*)" në krye të një skedari CSV nga 1.8 sekonda. deri në 0.3 sek.
- Mbështetje e shtuar për vargje me madhësi fikse, të cilat i ngjajnë listave që përmbajnë një numër fiks elementësh (“KRIJO TABELAVE vektorë (v DOUBLE[3]);”).
- Mbështetje e shtuar për t'u lidhur me MySQL, PostgreSQL dhe SQLite DBMS, e cila ju lejon të ngarkoni të dhëna nga DBMS të jashtme në DuckDB dhe t'i zhvendosni ato midis sistemeve të ndryshme. Bazat e të dhënave të jashtme aksesohen duke përdorur tabela standarde. BASHKENGJITHET 'postgres:dbname=postgresscanner' AS postgres; SELECT titullin, viti i lëshimit, gjatësia FROM postgres.film LIMIT 5;
- U shtua mbështetje për shprehjen "KOMENT MBI" për ruajtjen e një komenti në lidhje me një objekt në bazën e të dhënave.
- Mbështetje e shtuar për shprehjen "COPY FROM DATABASE" për kopjimin e të gjithë përmbajtjes nga një bazë të dhënash në tjetrën.
- Mbështetje e shtuar për modifikuesin "ALL" në shprehjet EXCEPT dhe INTERSECT.
- Lloji i zbatuar »
Burimi: opennet.ru
