DuckDB, odprtokodna baza podatkov, ki jo uporabljajo Google, Facebook in Airbnb

DuckDB, DBMS, ki ga uporabljajo Google, Facebook in Airbnb

DuckDB je sistem za upravljanje baze podatkov SQL OLAP v nastajanju

Pred kratkim objavljena je bila izdaja nove različice DuckDB 0.5.0, ki je razvijajoči se sistem za upravljanje analitičnih baz podatkov (DBMS), ki ga uporabljajo Google, Facebook in Airbnb.

DuckDB je visoko zmogljiv analitični podatkovni sistem. Zasnovan je tako, da je hiter, zanesljiv in enostaven za uporabo. DuckDB ponuja bogato narečje SQL s podporo, ki daleč presega osnovni SQL. DuckDB podpira poljubne in ugnezdene korelirane podpoizvedbe, okenske funkcije, primerjave, kompleksne tipe (matrike, strukture) in drugo.

Med njegovimi glavnimi značilnostmi izstopajo naslednje:

  • Namestitev preprosta
  • Integrirano: brez upravljanja strežnika
  • Format za shranjevanje ene datoteke
  • Hitra analitična obdelava
  • Hiter prenos med R/Python in RDBMS
  • Ni odvisno od zunanjega stanja. Na primer, ločene konfiguracijske datoteke, spremenljivka okolja.
  • Format za shranjevanje ene datoteke
  • Sestavljiv vmesnik. Fluent SQL Programmatic API
  • Popolnoma ACID prek MVCC

O DuckDB 0.5.0

Med novostmi je »out of core«, ki s predlaganjem vmesnih rezultatov skuša rešiti težave, ki lahko nastanejo, ko so podatki, ki se obdelujejo, večji od pomnilnika..

Nova različica uporablja indekse Adaptive Radix Tree (ART). za uporabo omejitev in pospešitev filtrov poizvedb. Do zdaj indeksi niso bili obstojni, kar je povzročalo težave, kot je izguba informacij o indeksih in dolgi časi ponovnega nalaganja tabel, omejenih s podatki.

ART v bistvu gre za poskus uporabe navpičnega in vodoravnega stiskanja za ustvarjanje kompaktnih indeksnih struktur. Nameni so drevesne podatkovne strukture, kjer vsaka raven drevesa vsebuje informacije o nekem delu nabora podatkov. Običajno so ponazorjeni z nizi znakov.

Projekt je dodal tudi optimizacijo naročila pridružitve, pogosta težava v analitičnih zbirkah podatkov. Hyoun Park, izvršni direktor in glavni analitik pri Amalgam Insights, je dejal, da razlika med DuckDB izhaja iz dejstva, da je majhna aplikacija, ki deluje v delovnih tokovih, ki temeljijo na kodi, za hitro skeniranje velikih shramb podatkov.

»DuckDB lahko pogosto izvaja poizvedbe neposredno na podatkih brez vmesne obdelave, kar izboljša obdelavo. S povsem tehnološkega vidika je nekoliko podoben Actian Vector, ki prav tako uporablja pristop stolpčne vektorizirane poizvedbe OLAP, čeprav je Actian zasnovan za pridobivanje podatkov, namesto da dela na procesu ali nalaga določeno opravilo. »

DuckDB Labs nudi nasvete in podporo. Soustanovitelj in izvršni direktor Hannes Mühleisen, ki je tudi sodeloval pri pisanju kode in vzdržuje projekt, je dejal, da ga je navdihnil SQLite, brezstrežniški motor baze podatkov OLTP, kjer je videl priložnost za podoben pristop, vendar za analitiko.

DuckDB se pogosto uporablja tudi kot del analitičnega ali upravljavskega sklada. večji podatki. Na primer, če nekdo zgradi aplikacijo po meri, ki zbira podatke in nato želi ustvariti vmesnik SQL, mora najprej kopirati podatke in jih premakniti v drug sistem, kar bi lahko povzročilo težave s sinhronizacijo, je pojasnil.

Prenesite in dobite

Pomembno je omeniti, da domača stran jasno navaja, da se ne sme uporabljati za "velike namestitve odjemalec/strežnik za centralizirano shranjevanje podatkov podjetja".

Projekt dela na izdaji različice 1.0, po katerem spremembe ne bodo več možne. Dela akademikov Centra za matematiko in teoretično računalništvo Centrum Wiskunde & Informatica v Amsterdamu, DuckDB je integriran v gostiteljski proces, omeniti velja, da ni strežniške programske opreme DBMS, ki bi jo bilo treba namestiti, posodobiti ali vzdrževati.

Na primer, paket DuckDB Python lahko izvaja poizvedbe neposredno na podatkih iz knjižnice programske opreme Python, brez uvoza ali kopiranja podatkov. DuckDB je napisan v C++, je brezplačen in odprtokoden pod licenco MIT.

Izvedete lahko več o tem in si ogledate priročnik za namestitev, V naslednji povezavi.


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Odgovoren za podatke: AB Internet Networks 2008 SL
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.