Tso tawm ntawm DuckDB 0.10.0, ib qho SQLite variant rau kev txheeb xyuas cov lus nug

Qhov kev tso tawm ntawm DuckDB 0.10.0 DBMS yog nthuav tawm, sib txuas cov khoom ntawm SQLite li compactness, muaj peev xwm los txuas rau hauv daim ntawv ntawm lub tsev qiv ntawv embedded, khaws cov ntaub ntawv hauv ib cov ntaub ntawv thiab ib qho yooj yim CLI interface, nrog rau cov cuab yeej thiab optimizations rau executing. analytical queries npog ib feem tseem ceeb ntawm cov ntaub ntawv khaws cia, piv txwv li hais tias aggregate tag nrho cov ntsiab lus ntawm cov ntxhuav los yog merge ob peb lub rooj loj. Txoj haujlwm code raug faib raws li daim ntawv tso cai MIT. Txoj kev loj hlob tseem nyob rau theem ntawm kev tsim cov kev sim tso tawm, txij li cov ntaub ntawv khaws cia tseem tsis tau ruaj khov thiab hloov pauv los ntawm cov ntawv mus rau version.

DuckDB muab cov lus SQL siab heev uas suav nrog kev muaj peev xwm ntxiv rau kev tuav cov lus nug nyuaj thiab siv sijhawm. Kev siv cov hom complex (arrays, qauv, unions) thiab lub peev xwm los ua arbitrary thiab nested correlating subqueries yog txaus siab. Nws txhawb kev khiav ntau cov lus nug ib txhij, khiav cov lus nug ncaj qha los ntawm CSV thiab Parquet cov ntaub ntawv. Nws muaj peev xwm import los ntawm PostgreSQL DBMS.

Ntxiv rau lub plhaub code los ntawm SQLite, qhov project siv cov parser los ntawm PostgreSQL nyob rau hauv ib lub tsev qiv ntawv cais, Hnub Math tivthaiv los ntawm MonetDB, nws tus kheej kev siv lub qhov rais functions (raws li Segment Tree Aggregation algorithm), ib tug niaj hnub qhia processor raws li. lub tsev qiv ntawv RE2, nws tus kheej cov lus nug optimizer, thiab MVCC tswj mechanism ib txhij ua tiav cov haujlwm (Multi-Version Concurrency Control), nrog rau cov lus nug vectorized ua tiav lub cav raws li Hyper-Pipelining Query Execution algorithm, uas tso cai rau cov nqi loj. ua tiav ib zaug hauv ib qho kev ua haujlwm.

Ntawm cov kev hloov pauv hauv qhov kev tso tawm tshiab:

  • Kev ua tau zoo ntawm kev txheeb xyuas cov ntaub ntawv hauv CSV hom tau zoo dua. Piv txwv li, nyeem CSV cov ntaub ntawv nrog 11 lab kab hauv cov ntawv tshiab raug txo los ntawm 2.6 vib nas this. mus txog 1.15 vib nas this, thiab ua qhov "SELECT COUNT(*)" ua haujlwm rau saum cov ntaub ntawv CSV los ntawm 1.8 vib nas this. mus 0.3 sec.
  • Ntxiv kev txhawb nqa rau cov arrays loj, uas zoo ib yam li cov npe uas muaj cov lej tas li (β€œCREATE TABLE vectors(v DOUBLE[3]);”).
  • Ntxiv kev txhawb nqa rau kev txuas mus rau MySQL, PostgreSQL thiab SQLite DBMS, uas tso cai rau koj thauj cov ntaub ntawv los ntawm DBMS sab nraud rau hauv DuckDB thiab txav mus los ntawm ntau lub tshuab. Cov ntaub ntawv sab nraud tau nkag mus siv cov ntxhuav txheem. ATTACH 'postgres:dbname=postgresscanner' AS postgres; SELECT title, release_year, length NTAWM postgres.film LIMIT 5;
  • Ntxiv kev txhawb nqa rau "COMMENT ON" qhia rau txuag cov lus hais txog ib qho khoom hauv cov ntaub ntawv.
  • Ntxiv kev txhawb nqa rau "COPY FROM DATABASE" qhia rau kev luam tag nrho cov ntsiab lus los ntawm ib lub database mus rau lwm qhov.
  • Ntxiv kev txhawb nqa rau "TAG NRHO" hloov kho hauv EXCEPT thiab INTERSECT kab lus.
  • Implemented type Β»

    Tau qhov twg los: opennet.ru

Ntxiv ib saib