DuckDB, un DB open source utilizzato da Google, Facebook e Airbnb

DuckDB, il DBMS utilizzato da Google, Facebook e Airbnb

DuckDB è un sistema di gestione di database SQL OLAP in divenire

recentemente è stato annunciato il rilascio della nuova versione di DuckDB 0.5.0, che è un sistema di gestione di database analitici in via di sviluppo (DBMS) utilizzato da Google, Facebook e Airbnb.

DuckDB è un sistema di database analitico ad alte prestazioni. È progettato per essere veloce, affidabile e facile da usare. DuckDB fornisce un ricco dialetto di SQL, con supporto ben oltre l'SQL di base. DuckDB supporta sottoquery correlate, funzioni di finestra, regole di confronto, tipi complessi (array, struct) e altro, arbitrarie e nidificate.

Tra le sue principali caratteristiche spiccano:

  • Installazione semplice
  • Integrato: nessuna gestione del server
  • Formato di archiviazione file singolo
  • Elaborazione analitica veloce
  • Trasferimento veloce tra R/Python e RDBMS
  • Non dipende da alcuno stato esterno. Ad esempio, file di configurazione separati, variabile di ambiente.
  • Formato di archiviazione file singolo
  • Interfaccia componibile. API di programmazione SQL fluente
  • Completamente ACIDO tramite MVCC

Informazioni su DuckDB 0.5.0

Tra le novità c'è "out of core", che mira a risolvere i problemi che possono sorgere quando i dati in elaborazione sono più grandi della memoria proponendo risultati intermedi.

La nuova versione utilizza indici Adaptive Radix Tree (ART). per applicare restrizioni e velocizzare i filtri delle query. Finora, gli indici non erano persistenti, causando problemi come la perdita di informazioni sugli indici e lunghi tempi di ricarica per le tabelle con vincoli di dati.

ARTE è, in sostanza, un tentativo di applicare la compressione verticale e orizzontale per creare strutture di indice compatte. Gli intenti sono strutture di dati simili ad alberi, in cui ogni livello dell'albero contiene informazioni su alcune parti del set di dati. Di solito sono illustrati da stringhe di caratteri.

Il progetto ha anche aggiunto l'ottimizzazione degli ordini di unione, un problema comune nei database analitici. Hyoun Park, CEO e Chief Analyst di Amalgam Insights, ha affermato che la differenziazione di DuckDB deriva dal fatto che si tratta di una piccola applicazione che funziona all'interno di flussi di lavoro basati su codice per scansionare rapidamente grandi archivi di dati.

“DuckDB può spesso eseguire query direttamente sui dati senza alcuna elaborazione intermedia, il che migliora l'elaborazione. Da un punto di vista puramente tecnologico, è in qualche modo simile ad Actian Vector, che adotta anche un approccio di query OLAP vettorializzate a colonne, sebbene Actian sia progettato per recuperare dati piuttosto che lavorare su un processo o caricare un lavoro specifico. »

DuckDB Labs fornisce consulenza e supporto. Il co-fondatore e CEO Hannes Mühleisen, che ha anche co-scritto il codice e mantiene il progetto, ha affermato di essere stato ispirato da SQLite, il motore di database OLTP serverless, dove ha visto un'opportunità per un approccio simile, ma per l'analisi.

DuckDB viene spesso utilizzato anche come parte di uno stack di analisi o gestione. dati più grandi. Ad esempio, se qualcuno crea un'applicazione personalizzata che raccoglie dati e quindi desidera creare un'interfaccia SQL, deve prima copiare i dati e spostarli su un altro sistema, il che potrebbe causare problemi di sincronizzazione, ha spiegato.

Scarica e ottieni

È importante ricordare che la home page afferma chiaramente che non dovrebbe essere utilizzata per "installazioni client/server di grandi dimensioni per l'archiviazione centralizzata dei dati aziendali".

Il progetto sta lavorando al rilascio della versione 1.0, dopodiché non sarà più possibile apportare modifiche. Il lavoro degli accademici del Center for Mathematics and Theoretical Computer Science Centrum Wiskunde & Informatica di Amsterdam, DuckDB è integrato in un processo host, vale la pena notare che non esiste un software server DBMS da installare, aggiornare o mantenere.

Ad esempio, il pacchetto Python DuckDB può eseguire query direttamente sui dati dalla libreria del software Python, senza importare o copiare dati. DuckDB è scritto in C++, è gratuito e open source con licenza MIT.

Puoi saperne di più e consultare il manuale di installazione, nel seguente link


Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile del trattamento: AB Internet Networks 2008 SL
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.