Itusilẹ ti DuckDB 0.10.0, iyatọ SQLite fun awọn ibeere itupalẹ

Itusilẹ ti DuckDB 0.10.0 DBMS ti gbekalẹ, apapọ iru awọn ohun-ini ti SQLite bi iwapọ, agbara lati sopọ ni irisi ile-ikawe ifibọ, titoju data data sinu faili kan ati wiwo CLI ti o rọrun, pẹlu awọn irinṣẹ ati awọn iṣapeye fun ṣiṣe. awọn ibeere itupalẹ ti o bo apakan pataki ti data ti o fipamọ, fun apẹẹrẹ ti o ṣajọpọ gbogbo akoonu ti awọn tabili tabi dapọ ọpọlọpọ awọn tabili nla. Koodu ise agbese ti pin labẹ iwe-aṣẹ MIT. Idagbasoke naa tun wa ni ipele ti ṣiṣẹda awọn idasilẹ esiperimenta, niwọn igba ti ọna kika ibi ipamọ ko tii diduro ati yipada lati ẹya si ẹya.

DuckDB n pese ede SQL ti ilọsiwaju ti o pẹlu awọn agbara afikun fun mimu idiju pupọ ati awọn ibeere ti n gba akoko. Lilo awọn oriṣi idiju (awọn akojọpọ, awọn ẹya, awọn ẹgbẹ) ati agbara lati ṣiṣẹ lainidii ati awọn ibeere isọdọtun itẹ-ẹiyẹ ni atilẹyin. O ṣe atilẹyin ṣiṣiṣẹ awọn ibeere lọpọlọpọ nigbakanna, ṣiṣe awọn ibeere taara lati awọn faili CSV ati Parquet. O ṣee ṣe lati gbe wọle lati PostgreSQL DBMS.

Ni afikun si koodu ikarahun lati SQLite, ise agbese na nlo parser lati PostgreSQL ni ile-ikawe lọtọ, paati Ọjọ Iṣiro lati MonetDB, imuse ti ara rẹ ti awọn iṣẹ window (da lori algorithm Aggregation Segment Tree), isise ikosile deede ti o da lori ile-ikawe RE2, olupilẹṣẹ ibeere tirẹ, ati ẹrọ iṣakoso MVCC kan nigbakanna ti awọn iṣẹ ṣiṣe (Iṣakoso Concurrency Multi-Version), bakanna bi ẹrọ ipaniyan ibeere vectorized ti o da lori Algorithm Ibeere Ibeere Hyper-Pipeling, eyiti ngbanilaaye awọn ipilẹ nla ti awọn iye lati ṣe ilana ni ẹẹkan ni iṣẹ kan.

Lara awọn ayipada ninu itusilẹ tuntun:

  • Iṣẹ ṣiṣe ti sisọ data ni ọna kika CSV ti ni ilọsiwaju ni pataki. Fun apẹẹrẹ, kika faili CSV pẹlu awọn ori ila miliọnu 11 ninu ẹya tuntun ti dinku lati awọn aaya 2.6. to 1.15 aaya, ati ṣiṣe awọn iṣẹ "Yan COUNT(*)" lori oke kan ti a ti CSV faili lati 1.8 aaya. to 0.3 iṣẹju-aaya.
  • Atilẹyin ti a ṣafikun fun awọn eto iwọn ti o wa titi, eyiti o jọra awọn atokọ ti o ni nọmba ti o wa titi ti awọn eroja (“ṢẸDA awọn olutọpa TABLE (v DOUBLE [3]);”).
  • Atilẹyin ti a ṣafikun fun sisopọ si MySQL, PostgreSQL ati SQLite DBMS, eyiti o fun ọ laaye lati gbe data lati DBMS ita sinu DuckDB ati gbe lọ laarin awọn ọna ṣiṣe oriṣiriṣi. Awọn apoti isura infomesonu ita wa ni iwọle si nipa lilo awọn tabili boṣewa. SO 'postgres:dbname=postgresscanner' AS postgres; Yan akọle, ọdun idasilẹ, ipari LATI postgres.film LIMIT 5;
  • Atilẹyin ti a ṣafikun fun ikosile “COMMENT ON” fun fifipamọ asọye nipa ohun kan ninu aaye data.
  • Atilẹyin ti a ṣafikun fun ikosile “Copy FROM DATABASE” fun didakọ gbogbo akoonu lati ibi ipamọ data kan si omiran.
  • Atilẹyin ti a ṣafikun fun iyipada “GBOGBO” ni YATO ati awọn ikosile INTERSECT.
  • Iru imuse

    orisun: opennet.ru

Fi ọrọìwòye kun