DuckDB 2.0 LTS bringt Servermodus, Trigger und VARIANT
DuckDB 2.0.0, ein Release mit Langzeit-Support vom 21. Oktober, bringt einen Servermodus, Trigger und VARIANT. Versionen vor 2.0 können seine Dateien nicht lesen.
4 Min. Lesezeit

Die Zahlen
- commits since DuckDB 1.5, per the DuckDB team
- ~20,000
- earliest end of support for DuckDB 2.0
- Oct 2027
- extended end of support for DuckDB 1.5
- March 2027
DuckDB hat Version 2.0.0 am 21. Oktober 2026 veröffentlicht. Es ist ein Release mit Langzeit-Support (LTS), den das Projekt mindestens bis Oktober 2027 unterstützt. Es bringt einen eingebauten Servermodus, SQL-Trigger und einen neuen Parser. Außerdem enthält es eine Änderung ohne Rückweg: Datenbankdateien, die 2.0 geschrieben hat, lassen sich mit keiner früheren Version öffnen. Upgrades brauchen daher einen Plan.
DuckDB ist eine Open-Source-SQL-Datenbank für Analysen. Wie SQLite läuft sie in Ihrem Programm statt als separater Server. Anders als SQLite ist sie für große Analyseabfragen über große Tabellen und Dateien wie Parquet und CSV gebaut.
Was DuckDB 2.0 neu bringt
Die Ankündigung von DuckDB nennt 2.0 das bisher größte Feature-Release des Teams, entstanden aus fast 20.000 Commits seit Version 1.5. "DuckDB 2.0 ist vor allem ein Feature-Release", schreibt das DuckDB-Team. Der Codename des Releases lautet "Cinnamon Teal", nach der Entenart Spatula cyanoptera. Das GitHub-Release verwendet den Namen "Cyanoptera".
| Funktion | Was sie tut |
|---|---|
| Quack-Servermodus | Betreibt DuckDB als Server, mit dem sich andere Clients verbinden |
| Trigger | CREATE TRIGGER führt SQL automatisch aus, vor oder nach einer Änderung an einer Tabelle |
| Typ VARIANT | Speichert semistrukturierte Daten wie JSON und zieht ihre gemeinsame Struktur heraus, für bessere Kompression und mehr Tempo |
| Asynchrones I/O | Liest Parquet- und CSV-Dateien, während Abfragen laufen, mit mehreren Anfragen gleichzeitig, vor allem um Cloud-Speicher wie Amazon S3 zu beschleunigen |
| Neuer SQL-Parser | Ein PEG-basierter Parser ist jetzt Standard; Erweiterungen können eigene SQL-Syntax hinzufügen, und Fehlermeldungen zeigen, wo das Problem liegt |
| Native Zeitzonen | Zeitzonen, Kalender und Collations brauchen die ICU-Bibliothek nicht mehr |
Ein Trigger ist eine in der Datenbank gespeicherte Regel: Wenn sich eine Zeile ändert, führe auch dieses SQL aus. DuckDB 2.0 unterstützt BEFORE- und AFTER-Trigger auf Zeilen- oder Anweisungsebene. Einige Kombinationen werden noch nicht unterstützt, etwa ein BEFORE ... FOR EACH ROW-Trigger bei UPDATE.
Quack macht DuckDB zum Server
Bisher bediente DuckDB jeweils nur ein Programm. Mit Quack startet CALL quack_serve(...) einen Server, und ein Client verbindet sich mit ATTACH 'quack:...'. Eine neue CONNECT-Anweisung schaltet eine ganze Sitzung auf eine entfernte Datenbank um. Das Kommandozeilen-Tool erhält dazu passende Flags -serve und -connect.
Der Server lauscht standardmäßig nur auf dem lokalen Rechner. Für den Fernzugriff empfiehlt das DuckDB-Team, ihn hinter einen Reverse Proxy zu stellen, der die TLS-Verschlüsselung übernimmt. InfoWorld berichtete im August, dass Quack es auch einfacher macht, PostgreSQL- und MySQL-Datenbanken aus der Ferne abzufragen.
Breaking Changes, die Sie vor dem Upgrade prüfen sollten
Laut dem Release-Beitrag und den Release Notes auf GitHub können diese Änderungen bestehenden Code oder Builds brechen:
- Dateien sind eine Einbahnstraße. DuckDB 2.0 liest und schreibt bestehende Datenbankdateien. "DuckDB-Versionen vor 2.0 können Datenbankdateien, die mit DuckDB 2.0 erstellt wurden, nicht lesen", warnt das Team.
- Neuer Parser als Standard.
SET enable_legacy_parser = true;holt den alten zurück. - Lambdas mit einfachem Pfeil sind abgeschaltet. Syntax wie
x -> x + 1ist deaktiviert.SET lambda_syntax = 'enable_single_arrow';schaltet sie wieder ein, bis Version 2.1 sie entfernt. - Ganzzahlige Division durch null löst jetzt einen Fehler aus, statt NULL zurückzugeben.
- Builds brauchen C++17 statt bisher C++11, und Release-Builds verwenden jetzt den Compiler Clang. Amalgamation-Builds gelten als veraltet.
- Die Unterstützung für Intel-Macs läuft aus. Community-Erweiterungen werden nicht mehr für macOS auf x86_64 gebaut, und DuckDB 2.1 streicht die Unterstützung.
Die Quellen widersprechen sich in einem Detail. Die Vorschau von InfoWorld beschrieb eine stabile C-API für Erweiterungen. Der Release-Beitrag sagt, die überarbeitete C API v2 sei "noch nicht als stabil markiert", weil das Team sie zuerst im Praxiseinsatz testen will.
Supportzeiträume
| Version | Unterstützt bis |
|---|---|
| DuckDB 2.0 (LTS) | Mindestens Oktober 2027 |
| DuckDB 1.5 | März 2027 (verlängert) |
| DuckDB 1.4 | Ende November 2026 |
Was das für Entwickler bedeutet
Behandeln Sie dies als geplante Migration, nicht als routinemäßiges Update.
- Kopieren Sie Ihre Datenbankdateien vor dem ersten Öffnen. Sobald DuckDB 2.0 in eine Datei schreibt, kann ein älteres Tool oder ein Teammitglied mit 1.5 sie nicht mehr lesen. Aktualisieren Sie alles, was eine gemeinsam genutzte Datei liest, zur selben Zeit.
- Testen Sie mit einer Kopie der Produktion. Das DuckDB-Team empfiehlt zuerst ein Schattensystem. Für geschäftskritische Arbeit rät es, auf das erste Patch-Release zu warten, das im November erscheinen soll.
- Prüfen Sie Ihren Client. Das Kommandozeilen-Tool und der Python-Client sind jetzt bereit. Die Clients für Go, R und Java sowie einige Erweiterungen "können ein paar Tage dauern", sagt das Team.
- Durchsuchen Sie Ihr SQL nach zwei Mustern. Suchen Sie nach Lambdas mit einfachem Pfeil und nach jeder ganzzahligen Division, die durch null teilen könnte. Beide verhalten sich jetzt anders.
- Stellen Sie einen Quack-Server nicht direkt ins Netz. Lassen Sie ihn auf localhost, oder setzen Sie einen TLS-Reverse-Proxy davor, wie das Team rät.
- Teams auf 1.4 sollten zuerst umsteigen. Der Support dafür endet Ende November 2026. Wechseln Sie daher auf 2.0 oder, als kleineren Schritt, auf 1.5.
Quellen
- Announcing DuckDB 2.0.0 - DuckDB
- DuckDB v2.0.0 release notes - GitHub
- DuckDB 2.0 coming this fall with client-server mode - InfoWorld
Ähnliche Artikel

TorchTPU: Google veröffentlicht natives PyTorch für TPUs als Open Source
TorchTPU führt PyTorch nativ auf Google-TPUs aus und bestand bei 98 % von 4.917 getesteten Hugging-Face-Modellen. PyTorch/XLA ist veraltet und wird am 15. November archiviert.
PyTorch 2.15 macht MoE-Decoding auf Macs bis zu 6,5-mal schneller
PyTorch 2.15 bringt FP8-Tensoren auf Apple-GPUs und neue Metal-Kernels. Das Decoding von Qwen3.6-35B-A3B auf einem M3 Ultra springt von 9,4 auf 61,3 Token pro Sekunde.

Tools This Week: 10. Oktober 2026 - Python 3.15, Mold 3.0
Sieben Entwickler-Tools in dieser Woche, angeführt von Python 3.15.0 und dem Rust-Neubau des Linkers Mold, jeweils mit den Änderungen und den Kosten.