DuckDB 0.6.0 is nu uitgebracht en bevat verbeteringen voor het schrijven van schijven, het laden van gegevens en meer.

DuckDB, het DBMS dat wordt gebruikt door Google, Facebook en Airbnb

DuckDB is een SQL OLAP-databasebeheersysteem in wording

De release van de nieuwe versie van het DBMS is aangekondigd DuckDB 0.6.0, versie waarin datacompressie is verbeterd, naast het feit dat er onder andere nieuwe functies zijn toegevoegd, evenals opslagverbeteringen.

DuckDB combineer SQLite-eigenschappen zoals compactheid, de mogelijkheid om verbinding te maken in de vorm van een geïntegreerde bibliotheek, opslag van de database in een enkel bestand en een handige CLI-interface, met tools en optimalisaties voor het uitvoeren van analytische query's die een aanzienlijk deel van de opgeslagen gegevens dekken, bijvoorbeeld , die aggregatie van alle tabelinhoud uitvoeren of meerdere grote tabellen samenvoegen.

Belangrijkste nieuwe functies van DuckDB 0.6.0

In deze nieuwe versie die wordt gepresenteerd, wordt benadrukt dat: er werd verder gewerkt aan het verbeteren van het opslagformaat, Daarnaast er is een schijfschrijfmodus geïmplementeerd, waar wanneer een grote dataset in één transactie wordt geladen, de gegevens worden gecomprimeerd en naar een bestand vanuit de database worden gestreamd zonder te wachten op de COMMIT-opdracht om de transactie vast te leggen.

Een andere verandering die opvalt in de nieuwe versie is dat ondersteuning toegevoegd voor het parallel laden van gegevens in afzonderlijke tabellen, wat de laadsnelheid op multicore-systemen aanzienlijk kan verhogen. In de oude versie duurde het laden van een database met 150 miljoen rijen op een 10-core CPU bijvoorbeeld 91 seconden en in de nieuwe versie duurt deze bewerking 17 seconden. Er zijn twee manieren van parallel laden: met behoud van recordorder en zonder orderbehoud.

Voor datacompressie wordt het FSST-algoritme gebruikt (Static Symbols Quick Table), waarmee u gegevens in rijen kunt bundelen met behulp van een gemeenschappelijk woordenboek van typeovereenkomsten. Door de toepassing van het nieuwe algoritme kon de grootte van de testdatabase worden verkleind van 761 MB naar 251 MB.

Om getallen te comprimeren (DOUBLE en FLOAT) worden de algoritmen Chimp en Patas voorgesteld. Vergeleken met het vorige Gorillas-algoritme biedt Chimp een hoger compressieniveau en snellere decompressie. Het Patas-algoritme loopt achter op Chimp wat betreft compressie, maar is aanzienlijk sneller wat betreft decompressiesnelheid, wat ongeveer hetzelfde is als het lezen van niet-gecomprimeerde gegevens.

Het valt ook op dat het is toegevoegd een experimentele mogelijkheid om gegevens uit CSV-bestanden in meerdere parallelle streams te laden (SET experimenteel_parallel_csv=true), wat de laadtijd voor grote CSV-bestanden aanzienlijk verkort. Toen de optie bijvoorbeeld was ingeschakeld, werd de downloadtijd voor een CSV-bestand van 720 MB teruggebracht van 3,5 seconden naar 0,6 seconden.

Van de andere veranderingen die zich onderscheiden van deze nieuwe versie:

  • De mogelijkheid van parallelle uitvoering van bewerkingen voor het maken en beheren van indexen is geïmplementeerd.
  • SQL biedt de mogelijkheid om query's te vormen die beginnen met het woord "FROM" in plaats van "SELECT". In dit geval wordt aangenomen dat de query begint met "SELECT *".
  • Ondersteuning toegevoegd voor de "COLUMNS"-expressie in SQL, waardoor u een bewerking op meerdere kolommen kunt uitvoeren zonder de expressie te dupliceren.
  • Geoptimaliseerd geheugenverbruik. Standaard wordt op het Linux-platform de jemalloc-bibliotheek gebruikt voor geheugenbeheer. Aanzienlijk verbeterde prestaties van hash merge-bewerkingen wanneer het geheugen beperkt is.
  • Uitvoermodus ".mode duckbox" toegevoegd aan de CLI, waarbij middenkolommen worden weggegooid op basis van de lijnbreedte van het terminalvenster). Met de parameter ".maxrows X" kunt u ook het aantal uitvoerrijen beperken.
  • De CLI biedt contextbewuste automatische aanvulling van invoer (invoer van trefwoorden, tabelnamen, functies, kolomnamen en bestandsnamen is voltooid).
  • De CLI is standaard ingeschakeld om een ​​voortgangsindicator voor query's weer te geven.

eindelijk als je bent geïnteresseerd om er meer over te weten, kunt u de details bekijken In de volgende link.


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: AB Internet Networks 2008 SL
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.