DuckDB este un sistem de gestionare a bazelor de date SQL OLAP în devenire
recent a fost anunțată lansarea noii versiuni de DuckDB 0.5.0, care este un sistem de gestionare a bazelor de date analitice (DBMS) în curs de dezvoltare, utilizat de Google, Facebook și Airbnb.
DuckDB este un sistem de baze de date analitice de înaltă performanță. Este conceput pentru a fi rapid, fiabil și ușor de utilizat. DuckDB oferă un dialect bogat de SQL, cu suport mult dincolo de SQL de bază. DuckDB acceptă subinterogări arbitrare și imbricate corelate, funcții de fereastră, colații, tipuri complexe (matrice, structuri) și multe altele.
Dintre principalele sale caracteristici se remarcă următoarele:
- Instalare simplă
- Integrat: fără management de server
- Format de stocare un singur fișier
- Procesare analitică rapidă
- Transfer rapid între R/Python și RDBMS
- Nu depinde de nicio stare externă. De exemplu, fișiere de configurare separate, variabile de mediu.
- Format de stocare un singur fișier
- Interfață componabilă. API-ul programatic SQL fluent
- Complet ACID prin MVCC
Despre DuckDB 0.5.0
Printre noutăți se numără „out of core”, care își propune să rezolve problemele care pot apărea atunci când datele procesate sunt mai mari decât memoria prin propunerea de rezultate intermediare..
Noua versiune folosește indici Adaptive Radix Tree (ART). pentru a aplica restricții și a accelera filtrele de interogare. Până acum, indexurile nu erau persistente, ceea ce duce la probleme precum pierderea informațiilor despre index și timpi lungi de reîncărcare pentru tabelele cu date limitate.
ART este, în esență, o încercare de a aplica compresie verticală și orizontală pentru a crea structuri index compacte. Intențiile sunt structuri de date asemănătoare arborelui, în care fiecare nivel al arborelui conține informații despre o parte a setului de date. Ele sunt de obicei ilustrate prin șiruri de caractere.
Proiectul a adăugat și optimizarea comenzilor de alăturare, o problemă comună în bazele de date analitice. Hyoun Park, CEO și Chief Analyst la Amalgam Insights, a declarat că diferențierea DuckDB vine din faptul că este o aplicație mică care funcționează în cadrul fluxurilor de lucru bazate pe cod pentru a scana rapid depozite mari de date.
„DuckDB poate rula adesea interogări direct asupra datelor fără procesare intermediară, ceea ce îmbunătățește procesarea. Din punct de vedere pur tehnologic, este oarecum similar cu Actian Vector, care adoptă, de asemenea, o abordare de interogare OLAP vectorizată în coloană, deși Actian este proiectat să preia date mai degrabă decât să lucreze la un proces sau să încarce un anumit job. »
DuckDB Labs oferă consiliere și asistență. Cofondatorul și CEO Hannes Mühleisen, care a co-scris codul și menține proiectul, a declarat că s-a inspirat de SQLite, motorul de baze de date OLTP fără server, unde a văzut o oportunitate pentru o abordare similară, dar pentru analiză.
DuckDB este adesea folosit ca parte a unei stive de analiză sau management. date mai mari. De exemplu, dacă cineva construiește o aplicație personalizată care colectează date și apoi dorește să creeze o interfață SQL, mai întâi trebuia să copieze datele și să le mute într-un alt sistem, ceea ce ar putea cauza probleme de sincronizare, a explicat el.
Descărcați și obțineți
Este important de menționat că pagina de start afirmă clar că nu trebuie folosită pentru „instalații mari client/server pentru stocarea centralizată a datelor întreprinderii”.
Proiectul lucrează la lansarea versiunii 1.0, după care nu se vor mai putea face modificări. Lucrările cadrelor universitare de la Centrul de Matematică și Informatică Teoretică Centrum Wiskunde & Informatica din Amsterdam, DuckDB este integrată într-un proces gazdă, este de remarcat faptul că nu există un software de server DBMS de instalat, actualizat sau întreținut.
De exemplu, pachetul DuckDB Python poate rula interogări direct pe datele din biblioteca software Python, fără a importa sau copia date. DuckDB este scris în C++, este gratuit și open source sub licența MIT.
Puteți afla mai multe despre acesta și puteți consulta manualul de instalare, În următorul link.