Release fan DuckDB 0.10.0, in SQLite-fariant foar analytyske queries

De frijlitting fan 'e DuckDB 0.10.0 DBMS wurdt presintearre, kombinearret sokke eigenskippen fan SQLite as kompaktens, de mooglikheid om te ferbinen yn' e foarm fan in ynbêde bibleteek, it opslaan fan de databank yn ien bestân en in handige CLI-ynterface, mei ark en optimisaasjes foar it útfieren analytyske queries dy't in wichtich part fan 'e opsleine gegevens dekke, bygelyks dy't de hiele ynhâld fan tabellen aggregearje of ferskate grutte tabellen fusearje. De projektkoade wurdt ferspraat ûnder de MIT-lisinsje. De ûntwikkeling is noch op it poadium fan it foarmjen fan eksperimintele releases, om't it opslachformaat noch net stabilisearre is en feroaret fan ferzje nei ferzje.

DuckDB leveret in avansearre SQL-dialekt dat ekstra mooglikheden omfettet foar it behanneljen fan heul komplekse en tiidslinende fragen. It gebrûk fan komplekse typen (arrays, struktueren, fakbûnen) en de mooglikheid om willekeurige en nestede korrelearjende subqueries út te fieren wurde stipe. It stipet it útfieren fan meardere queries tagelyk, it útfieren fan queries direkt fan CSV- en Parquet-bestannen. It is mooglik om te ymportearjen fanút de PostgreSQL DBMS.

Neist de shell-koade fan SQLite brûkt it projekt in parser fan PostgreSQL yn in aparte bibleteek, de Date Math-komponint fan MonetDB, syn eigen ymplemintaasje fan finsterfunksjes (basearre op it Segment Tree Aggregation-algoritme), in reguliere ekspresjeprosessor basearre op de RE2-bibleteek, in eigen query-optimizer, en in MVCC-kontrôlemeganisme simultane útfiering fan taken (Multi-Version Concurrency Control), lykas ek in vectorisearre query-útfiermotor basearre op it Hyper-Pipelining Query Execution-algoritme, wêrtroch grutte sets wearden mooglik binne te ferwurkjen yn ien kear yn ien operaasje.

Under de feroaringen yn 'e nije release:

  • De prestaasjes fan it parsearjen fan gegevens yn CSV-formaat binne signifikant ferbettere. Bygelyks, it lêzen fan in CSV-bestân mei 11 miljoen rigen yn 'e nije ferzje waard fermindere fan 2.6 sekonden. oant 1.15 sekonden, en it útfieren fan de operaasje "SELECT COUNT(*)" boppe op in CSV-bestân fan 1.8 sekonden. oant 0.3 sek.
  • Stipe tafoege foar arrays fan fêste grutte, dy't lykje op listen mei in fêst oantal eleminten ("CREATE TABLE vectors (v DOUBLE[3]);").
  • Stipe tafoege foar ferbining mei MySQL, PostgreSQL en SQLite DBMS, wêrtroch jo gegevens fan eksterne DBMS yn DuckDB kinne laden en ferpleatse tusken ferskate systemen. Eksterne databases wurde tagong mei standerttabellen. ATTACH 'postgres:dbname=postgresscanner' AS postgres; SELECT title, release_year, length FROM postgres.film LIMIT 5;
  • Stipe tafoege foar de útdrukking "COMMENT ON" foar it bewarjen fan in opmerking oer in objekt yn 'e databank.
  • Stipe tafoege foar de útdrukking "COPY FROM DATABASE" foar it kopiearjen fan alle ynhâld fan de iene database nei de oare.
  • Stipe tafoege foar de "ALLE" modifier yn EXCEPT en INTERSECT útdrukkingen.
  • Implementearre type »

    Boarne: opennet.ru

Add a comment