Den første stabile utgaven av databasesystemet DuckDB

Etter seks år med utvikling har utgivelsen av DBMS DuckDB 1.0 blitt lansert, posisjonert som et alternativ til SQLite for analytiske forespørsel. DuckDB kombinerer egenskaper fra SQLite, som kompakthet, mulighet for tilkobling i form av et innebygd bibliotek, lagring av databaser i én fil, og et brukervennlig CLI-grensesnitt, med verktøy og optimaliseringer for utførelse av analytiske forespørsel som dekker en betydelig del av lagrede data, for eksempel som utfører aggregasjoner av alt innhold i tabeller eller sammensmelting av flere store tabeller. Koden til prosjektet er skrevet i C++ og distribueres under MIT-lisensen.

Versjon 1.0 er merket som det første stabile utgivelsen av prosjektet, hvor hovedfokuset under forberedelsene har vært på å forbedre stabiliteten, ikke på å øke funksjonaliteten. Den nye versjonen har også bekreftet lagringsformatet, for hvilket bakoverkompatibilitet er sikret siden forrige utgivelse. I fremtidige utgivelser planlegger utviklerne å være mer forsiktige med å legge til nye funksjoner og å sørge for å opprettholde kompatibilitet mellom utgivelser, samt stabilisering av SQL-diakret og C API. Hvis det i fremtiden er behov for å endre SQL-semantikk, vil utviklerne på forhånd publisere en advarsel om de kommende endringene og gi alternative løsninger for å opprettholde eksisterende kode.

DuckDB støtter en utvidet diakt av SQL-språket, inkludert ekstra funksjoner for behandling av svært komplekse og langvarige forespørsel. For eksempel er det mulig å bruke komplekse typer (arrayer, strukturer, uniones), samt å utføre arbitrære og innebygde korrelerende underforespørsel. Samtidig utførelse av flere forespørsel støttes, sammen med å utføre forespørsel direkte fra filer i CSV- og Parquet-format. Støtte for import fra DBMS PostgreSQL er også tilgjengelig.

I tillegg til skallet fra SQLite bruker prosjektet en egen bibliotekutdrag fra PostgreSQL, Date Math-komponenten fra MonetDB, sin egen implementering av vindusfunksjoner (basert på Segment Tree Aggregation-algoritmen), en regulær uttrykkshåndterer basert på RE2-biblioteket, sin egen spørringsoptimalisator, MVCC-mekanismen for å håndtere samtidige oppgavekjøringer (Multi-Version Concurrency Control), samt en vektorisert spørringsmotor basert på Hyper-Pipelining Query Execution-algoritmen, som tillater behandling av store mengder verdier i en enkelt operasjon.

Kilde: opennet.ru

Kjøp pålitelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere 🔥 Kjøp pålitelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere | ProHoster