A DuckDB 0.10.0 kiadása, amely az SQLite analitikai lekérdezésekhez készült verziója

Bemutatták a DuckDB 0.10.0 kiadását, amely ötvözi az SQLite olyan tulajdonságait, mint a kompaktitás, a beágyazott könyvtárként való csatlakozás képessége, az adatbázis egy fájlban való tárolása és a kényelmes CLI felület, valamint azok az eszközök és optimalizációk, amelyek lehetővé teszik analitikai lekérdezések végrehajtását, amelyek a tárolt adatok jelentős részét lefedik, például az összes táblázat tartalmának aggregálását vagy több nagy táblázat egyesítését. A projekt kódja MIT licenc alatt terjesztendő. A fejlesztés még kísérleti kiadások formálásának szakaszában van, mivel a tárolási formátum még nem stabilizálódott és verzióról verzióra változik.

A DuckDB egy kiterjesztett SQL nyelvdialektust kínál, amely további lehetőségeket tartalmaz nagyon összetett és hosszan futó lekérdezések feldolgozására. Támogatja a bonyolult típusok (tömbök, struktúrák, egyesítések) használatát, valamint a tetszőleges és beágyazott korrelált lekérdezések végrehajtásának lehetőségét. Támogatott a párhuzamos lekérdezés-végrehajtás, a lekérdezések közvetlen végrehajtása CSV és Parquet formátumú fájlokból, és van lehetőség importálásra PostgreSQL adatbázisokból.

A projekt az SQLite-ból származó shell kód mellett egy külön könyvtárba helyezett PostgreSQL parser-t, a MonetDB-ből származó Date Math komponenst, saját megvalósítású ablakos funkciókat (a Segment Tree Aggregation algoritmus alapján), az RE2 könyvtáron alapuló reguláris kifejezések feldolgozóját, egyedi lekérdezés-optimalizálót, egy MVCC mechanizmust a párhuzamos végrehajtás irányítására (Multi-Version Concurrency Control), valamint egy hyper-pipelining lekérdezés-végrehajtó algoritmusra épülő vektorizált végrehajtó motort alkalmaz, amely lehetővé teszi, hogy egy művelet során nagyméretű értékhalmazokat egyszerre kezeljen.

A legújabb verzióban bekövetkezett változások:

  • Jelentősen megnövelték a CSV formátumú adatok feldolgozásának teljesítményét. Például egy 11 millió soros CSV fájl olvasása az új verzióban 2,6 másodpercről 1,15 másodpercre csökkent, míg a "SELECT COUNT(*)" művelet végrehajtása egy CSV fájl felett 1,8 másodpercről 0,3 másodpercre csökkent.
  • Hozzáadták a fix méretű tömbök támogatását, amelyek hasonlítanak a listákra, fix számú elemet tartalmazva ("CREATE TABLE vectors(v DOUBLE[3]);").
  • Hozzáadva a MySQL, PostgreSQL és SQLite adatbázisokhoz való csatlakozás támogatása, amely lehetővé teszi az adatok DuckDB-be történő betöltését külső adatbázisokból és azok áthelyezését különböző rendszerek között. A külső adatbázisokkal való kapcsolat típikus táblák használatával valósul meg. ATTACH ‘postgres:dbname=postgresscanner’ AS postgres; SELECT title, release_year, length FROM postgres.film LIMIT 5;
  • Hozzáadva a ‘COMMENT ON’ kifejezés támogatása az objektumra vonatkozó megjegyzés tárolásához az adatbázisban.
  • Hozzáadva a ‘COPY FROM DATABASE’ kifejezés támogatása az összes tartalom átmásolásához egyik adatbázisból a másikba.
  • Hozzáadva az ‘ALL’ módosító támogatása az EXCEPT és INTERSECT kifejezésekben.
  • Megvalósítva a » típus.

    Forrás: opennet.ru
Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster