DuckDB 0.6.0 wurde jetzt veröffentlicht und enthält Verbesserungen beim Schreiben auf die Festplatte, beim Laden von Daten und mehr.

DuckDB, das von Google, Facebook und Airbnb verwendete DBMS

DuckDB ist ein in der Entwicklung befindliches SQL OLAP-Datenbankverwaltungssystem

Die Veröffentlichung der neuen Version des DBMS wurde angekündigt Duckdb 0.6.0, Version in der Die Datenkomprimierung wurde verbessert, außerdem wurden unter anderem neue Funktionen sowie Speicherverbesserungen hinzugefügt.

Duckdb Kombinieren Sie SQLite-Eigenschaften wie Kompaktheit, Verbindungsmöglichkeit in Form einer integrierten Bibliothek, Speicherung der Datenbank in einer einzigen Datei und eine komfortable CLI-Schnittstelle mit Tools und Optimierungen zur Durchführung analytischer Abfragen, die einen erheblichen Teil der gespeicherten Daten abdecken, z. die eine Aggregation aller Tabelleninhalte durchführen oder mehrere große Tabellen zusammenführen.

Die wichtigsten neuen Funktionen von DuckDB 0.6.0

In dieser neuen Version, die vorgestellt wird, wird dies hervorgehoben weiter an der Verbesserung des Speicherformats gearbeitet, Außerdem ein Disk-Schreibmodus wurde implementiert, wenn ein großer Datensatz in einer Transaktion geladen wird, werden die Daten komprimiert und von der Datenbank in eine Datei gestreamt, ohne auf den COMMIT-Befehl zu warten, um die Transaktion festzuschreiben.

Eine weitere der Änderungen, die in der neuen Version auffällt, ist die Unterstützung für das parallele Laden von Daten in separate Tabellen hinzugefügt, was die Ladegeschwindigkeit auf Multicore-Systemen erheblich erhöhen kann. Beispielsweise dauerte das Laden einer Datenbank mit 150 Millionen Zeilen auf einer 10-Kern-CPU in der alten Version 91 Sekunden, und in der neuen Version dauert dieser Vorgang 17 Sekunden. Es gibt zwei Arten des parallelen Ladens: mit Aufbewahrung der Datensatzreihenfolge und ohne Aufbewahrung der Reihenfolge.

Zur Datenkomprimierung wird der FSST-Algorithmus verwendet (Schnelltabelle für statische Symbole), mit der Sie Daten mithilfe eines gemeinsamen Wörterbuchs von Typübereinstimmungen in Zeilen packen können. Durch die Anwendung des neuen Algorithmus konnte die Größe der Testdatenbank von 761 MB auf 251 MB reduziert werden.

Zur Komprimierung von Zahlen (DOUBLE und FLOAT) werden die Algorithmen Chimp und Patas vorgeschlagen. Im Vergleich zum vorherigen Gorillas-Algorithmus bietet Chimp eine höhere Komprimierung und eine schnellere Dekomprimierung. Der Patas-Algorithmus hinkt Chimp in Bezug auf die Komprimierung hinterher, ist jedoch deutlich schneller in der Dekomprimierungsgeschwindigkeit, was ungefähr dem Lesen unkomprimierter Daten entspricht.

Es wird auch darauf hingewiesen, dass es hinzugefügt wurde eine experimentelle Möglichkeit, Daten aus CSV-Dateien in mehreren parallelen Streams zu laden (SET experimental_parallel_csv=true), wodurch die Ladezeit für große CSV-Dateien erheblich verkürzt wird. Wenn die Option aktiviert war, wurde beispielsweise die Downloadzeit für eine 720-MB-CSV-Datei von 3,5 Sekunden auf 0,6 Sekunden reduziert.

Von den anderen Änderungen das hebt sich von dieser neuen Version ab:

  • Die Möglichkeit der parallelen Ausführung von Indexerstellungs- und -verwaltungsoperationen wurde implementiert.
  • SQL bietet die Möglichkeit, Abfragen zu bilden, die mit dem Wort „FROM“ anstelle von „SELECT“ beginnen. In diesem Fall wird angenommen, dass die Abfrage mit "SELECT *" beginnt.
  • Unterstützung für den Ausdruck „COLUMNS“ in SQL hinzugefügt, sodass Sie eine Operation für mehrere Spalten ausführen können, ohne den Ausdruck zu duplizieren.
  • Optimierter Speicherverbrauch. Standardmäßig wird auf der Linux-Plattform die jemalloc-Bibliothek für die Speicherverwaltung verwendet. Deutlich verbesserte Leistung von Hash-Merge-Vorgängen, wenn der Arbeitsspeicher begrenzt ist.
  • Ausgabemodus ".mode duckbox" zur CLI hinzugefügt, mittlere Spalten basierend auf der Zeilenbreite des Terminalfensters verworfen). Mit dem Parameter ".maxrows X" können Sie auch die Anzahl der Ausgabezeilen begrenzen.
  • Die CLI bietet eine kontextsensitive automatische Eingabevervollständigung (die Eingabe von Schlüsselwörtern, Tabellennamen, Funktionen, Spaltennamen und Dateinamen wird abgeschlossen).
  • Die CLI ist standardmäßig aktiviert, um eine Abfragefortschrittsanzeige anzuzeigen.

schließlich, wenn Sie sind daran interessiert, mehr darüber zu erfahrenkönnen Sie die Details überprüfen im folgenden Link.


Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: AB Internet Networks 2008 SL
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.