Software

DuckDB 2.0 Resmi Rilis, Kini Bisa Jadi Server: Ini Fitur Baru dan Cara Upgrade

M
Mughu
11 menit baca
DuckDB 2.0 Resmi Rilis, Kini Bisa Jadi Server: Ini Fitur Baru dan Cara Upgrade

DuckDB 2.0 LTS resmi rilis dengan mode server Quack, I/O asinkron, tipe VARIANT, agent mode untuk AI, dan trigger. Ini daftar fitur barunya, jadwal dukungan, da

DuckDB 2.0 resmi dirilis pada 21 Oktober 2026 dengan nama kode "Cinnamon Teal". Ini adalah versi dengan dukungan jangka panjang (LTS) yang akan dirawat setidaknya sampai Oktober 2027, sekaligus rilis dengan fitur terbanyak sepanjang sejarah DuckDB. Tim pengembangnya menyebut ada hampir 20.000 commit sejak versi 1.5.

Perubahan paling mencolok adalah DuckDB sekarang bisa dijalankan sebagai server, bukan cuma database yang menempel di dalam aplikasi. Artikel ini akan menjelaskan apa saja fitur baru di DuckDB 2.0, perbedaannya dengan versi sebelumnya, bagaimana jadwal dukungan tiap versi, plus langkah upgrade yang aman buat tim yang sudah memakainya di Indonesia.

Sekilas tentang DuckDB dan kenapa versi 2.0 penting

Buat yang belum kenal, DuckDB adalah database SQL yang khusus dibuat untuk analitik. Bedanya dengan MySQL atau PostgreSQL, DuckDB biasanya berjalan langsung di dalam proses aplikasi, mirip SQLite, sehingga tidak perlu menyalakan server terpisah. Karena itu DuckDB populer di kalangan data analyst, data engineer, dan pengguna Python yang ingin mengolah file CSV atau Parquet berukuran besar langsung dari laptop.

Versi 1.0 dulu fokus pada stabilitas dan kompatibilitas. Versi 2.0 justru kebalikannya, yaitu rilis yang penuh fitur baru. Beberapa poin besarnya:

  1. Mode server lewat protokol Quack yang sudah dipoles, plus perintah baru CONNECT.
  2. I/O asinkron untuk membaca Parquet, CSV, dan file DuckDB, terutama dari penyimpanan cloud seperti S3.
  3. Tipe data VARIANT yang kini jadi warga kelas satu untuk data semi-terstruktur seperti JSON.
  4. Agent mode di command line, khusus saat DuckDB dijalankan oleh agen AI.
  5. Trigger, parser SQL baru, dan repositori ekstensi yang bisa di-host sendiri.

Catatan: Sebelumnya mughu.id sudah pernah membahas pengertian dan kelebihan DuckDB secara umum. Artikel ini khusus membahas apa yang baru di versi 2.0.

DuckDB kini bisa jadi server lewat Quack

Sejak hari pertama, DuckDB adalah database in-process. Protokol Quack sebenarnya sudah diperkenalkan di DuckDB 1.5.3 pada Mei 2026, tapi di versi 2.0 protokol ini dibuat jauh lebih cepat dan stabil. Hasilnya, satu proses DuckDB bisa melayani database ke klien lain seperti database server pada umumnya.

Cara pakainya cukup ringkas. Di sisi server, cukup panggil fungsi quack_serve dengan token. Di sisi klien, database jarak jauh dipasang dengan ATTACH, lalu sesi dipindahkan ke sana dengan CONNECT:

SQL
-- di sisi server
CALL quack_serve(token = 'my_token');

-- di sisi klien
ATTACH 'quack:localhost' AS qk (TOKEN 'my_token');
CONNECT qk;
SELECT * FROM events;

Ada juga jalan pintas dari terminal, yaitu duckdb -serve untuk menyalakan server dan duckdb -connect untuk menyambung sebagai klien.

Beberapa hal penting yang perlu diingat:

  • Secara bawaan, server hanya mendengarkan localhost. Untuk menerima koneksi dari mesin lain, tim DuckDB menyarankan memasang reverse proxy dengan TLS di depannya.
  • Opsi allow_other_hostname yang membuka server langsung ke jaringan hanya untuk pengujian, bukan produksi.
  • Perintah CONNECT juga bisa dipakai ke PostgreSQL dan MySQL. Untuk keduanya, ada optimizer baru yang mengirim query langsung ke server jarak jauh, sehingga tabel tidak perlu ditarik utuh lewat jaringan.

Bagi tim kecil, fitur ini menarik karena satu file DuckDB bisa dipakai bersama oleh beberapa orang tanpa harus pindah ke data warehouse berbayar.

Lebih kencang berkat I/O asinkron

Peningkatan performa terbesar datang dari I/O asinkron. Sebelumnya, proses membaca data dan proses mengolah query berjalan beriringan secara kaku. Di versi 2.0, lapisan I/O berdiri sendiri: DuckDB bisa mengirim banyak permintaan baca di latar belakang sekaligus, sementara mesin query tetap bekerja.

Dampaknya paling terasa saat membaca file dari penyimpanan objek seperti s3://. Tim DuckDB menyebut query di penyimpanan cloud jadi jauh lebih cepat karena jaringan bisa dimanfaatkan lebih penuh. Fitur ini berlaku untuk:

  1. File Parquet.
  2. File CSV.
  3. Format penyimpanan asli DuckDB.

Situs independen Tech AI Wire juga mencatat bahwa DuckDB 2.0 memperluas dukungan data semi-terstruktur dan menambahkan parser baru. Untuk pengguna yang sering menarik dataset dari bucket cloud, I/O asinkron mungkin jadi alasan terkuat untuk upgrade.

Tipe VARIANT, JSON yang lebih cepat

Tipe VARIANT dipakai untuk menyimpan data tanpa skema tetap, misalnya log aplikasi atau respons API dalam format JSON. Bedanya dengan kolom JSON biasa, VARIANT tidak disimpan sebagai teks. Setiap baris boleh punya bentuk data yang berbeda, tapi DuckDB tetap bisa mengolahnya dengan kecepatan ala kolom.

VARIANT sebenarnya sudah ada sejak versi 1.5, tapi di 2.0 integrasinya jauh lebih dalam:

  • DuckDB otomatis mendeteksi struktur yang sering muncul lalu "memecahnya" supaya lebih hemat ruang dan lebih cepat dibaca.
  • VARIANT bisa dibaca dan ditulis langsung ke Parquet.
  • Tersedia keluarga fungsi variant_*, misalnya variant_type dan variant_keys, untuk melihat jenis dan kunci data di setiap baris.

Buat yang sehari-hari mengolah data dari aplikasi seperti log transaksi atau event tracking, fitur ini bisa mengurangi pekerjaan merapikan JSON sebelum dianalisis.

Agent mode, ramah untuk Claude Code dan Codex

Ini adalah fitur yang paling "zaman sekarang". Tim DuckDB melihat semakin banyak agen coding seperti Claude Code, Codex, dan Cursor yang menjalankan DuckDB CLI atas nama penggunanya. Karena itu, CLI versi 2.0 bisa mendeteksi kalau sedang dijalankan oleh agen AI, lalu otomatis pindah ke agent mode.

Apa saja yang berubah saat agent mode aktif?

  1. Hasil query ditampilkan sebagai tabel Markdown ringkas, bukan kotak dengan banyak spasi.
  2. CLI memberi tahu dengan jelas kalau hasil terpotong.
  3. Query yang kebablasan dihentikan lebih awal, dan error dilaporkan dalam format JSON.
  4. Query panjang menampilkan perkiraan biaya sebelum jalan, sehingga agen bisa memutuskan mau menunggu atau tidak.

Dalam uji coba TPC-H, agent mode memangkas jumlah output yang harus dibaca model sebesar 59 persen. Angka ini penting karena output yang lebih pendek berarti token lebih sedikit, dan token lebih sedikit berarti biaya API lebih hemat. Mode ini bisa dipaksa nyala dengan flag -agent, atau dimatikan dengan -no-agent.

Tips: Buat yang sering menyuruh agen AI menganalisis file CSV, upgrade ke DuckDB 2.0 bisa membuat tagihan token sedikit lebih ringan tanpa mengubah prompt.

Trigger, parser baru, dan fitur SQL lainnya

DuckDB 2.0 akhirnya mendukung trigger lewat perintah CREATE TRIGGER. Ada trigger BEFORE dan AFTER, FOR EACH ROW dan FOR EACH STATEMENT, serta tabel transisi lewat REFERENCING OLD/NEW TABLE. Contoh paling umum adalah tabel audit yang mencatat setiap perubahan data. Tim DuckDB juga menunjukkan trigger bisa dipakai untuk memperbarui ringkasan data secara bertahap, mirip materialized view. Meski begitu, beberapa kombinasi seperti BEFORE ... FOR EACH ROW belum didukung.

Perubahan besar lain ada di parser SQL. Sejak 2018, DuckDB memakai parser turunan PostgreSQL. Di versi 2.0, parser baru berbasis PEG buatan tim sendiri menjadi bawaan. Keuntungannya:

  • Ekstensi bisa menambah sintaks SQL baru tanpa merusak aturan lain.
  • Pesan error kini menunjukkan lokasi kesalahan yang presisi.
  • Kalau ada masalah, parser lama masih bisa dipakai lewat SET enable_legacy_parser = true;.

Ada pula beberapa tambahan dialek SQL yang praktis:

  1. Singkatan $variable untuk memanggil variabel.
  2. CTE yang bisa berisi INSERT, UPDATE, DELETE, dan COPY.
  3. NEAREST join untuk pencarian kemiripan top-k, berguna untuk data embedding dan vektor.
  4. Skema bertingkat, misalnya CREATE SCHEMA finance.reports.
  5. Fungsi JSON baru seperti json_set, json_insert, json_replace, dan json_remove.

Organisasi juga kini bisa membuat repositori ekstensi sendiri yang ditandatangani dengan kunci RSA, meski fitur ini masih berstatus dalam pengembangan dan sintaksnya bisa berubah.

Jadwal dukungan versi DuckDB

Dengan rilis ini, ada tiga jalur DuckDB yang masih didukung. Jadwalnya penting diperhatikan supaya tidak tiba-tiba memakai versi yang sudah tidak dirawat.

Versi Status Didukung sampai
DuckDB 2.0 LTS terbaru Minimal Oktober 2027
DuckDB 1.5 Diperpanjang, praktis jadi LTS Maret 2027
DuckDB 1.4 LTS lama 17 November 2026

Artinya, tim yang masih memakai DuckDB 1.4 hanya punya waktu sekitar tiga minggu lagi. Pilihannya adalah langsung menguji 2.0 atau pindah dulu ke 1.5 sebagai jembatan.

Cara upgrade ke DuckDB 2.0 dengan aman

Menurut tim DuckDB, upgrade untuk kebanyakan pengguna cukup mudah. Tapi ada satu hal yang wajib dipahami sejak awal: file database yang dibuat DuckDB 2.0 tidak bisa dibaca versi sebelum 2.0. Sebaliknya, DuckDB 2.0 tetap bisa membaca dan menulis file lama, dan file lama itu masih bisa dibuka versi lama.

Langkah yang disarankan:

  1. Cadangkan file database sebelum dibuka dengan versi baru.
  2. Pasang DuckDB 2.0 lewat halaman instalasi resmi, misalnya dengan pip install --upgrade duckdb untuk pengguna Python.
  3. Uji di sistem bayangan (shadow system) dulu, jangan langsung di produksi.
  4. Pastikan semua proses yang membuka file yang sama sudah memakai versi 2.0, terutama di deployment dengan banyak proses.
  5. Untuk beban kerja yang sangat kritis, pertimbangkan menunggu patch pertama yang dijadwalkan keluar pada November 2026.

Beberapa perubahan lain yang bisa membuat kode lama error:

  • Sintaks lambda panah tunggal x -> x + 1 kini mati secara bawaan. Gunakan sintaks gaya Python, atau aktifkan sementara dengan SET lambda_syntax = 'enable_single_arrow';. Opsi ini akan dihapus total di versi 2.1.
  • Membangun dari source sekarang butuh compiler C++17.
  • Build amalgamation (seluruh source dalam satu file) sudah dinyatakan usang.
  • Dukungan Mac Intel (osx_amd64) mulai dikurangi, dan DuckDB 2.1 akan berhenti mendukungnya.

Peringatan: Pengguna MacBook Intel lama sebaiknya mulai menyiapkan rencana, karena ekstensi komunitas sudah tidak lagi dibangun untuk platform ini.

Buat data analyst dan developer di Indonesia

DuckDB adalah proyek open source dan gratis, jadi tidak ada urusan bayar dolar atau langganan untuk mencobanya. Ini membuatnya cocok untuk mahasiswa, data analyst di startup, sampai tim data UMKM yang ingin mengolah laporan penjualan dari file Excel atau CSV tanpa server mahal.

Beberapa skenario yang paling relevan di sini:

  • Laptop spesifikasi biasa. DuckDB tetap ringan dan berjalan di laptop, sehingga cocok untuk belajar SQL analitik tanpa perlu cloud.
  • Tim kecil yang berbagi data. Mode server Quack memungkinkan beberapa anggota tim memakai satu database tanpa harus berlangganan data warehouse.
  • Pengguna agen AI. Developer yang sudah memakai Claude Code atau Codex bisa langsung merasakan agent mode, karena output yang lebih ringkas berarti tagihan token lebih hemat.
  • Data di cloud. Tim yang menyimpan data di S3 atau penyimpanan sejenis bisa merasakan manfaat I/O asinkron.

Dokumentasi DuckDB masih berbahasa Inggris, tapi tim pengembang sudah menyediakan halaman "What's New in the Docs for 2.0" yang menautkan setiap fitur baru ke dokumentasinya masing-masing. Halaman itu jadi titik awal yang praktis buat yang ingin mempelajari fitur satu per satu.

Poin penting

  • DuckDB 2.0 LTS rilis 21 Oktober 2026 dan didukung minimal sampai Oktober 2027.
  • Fitur utama: mode server Quack, I/O asinkron, VARIANT, agent mode, trigger, dan parser PEG.
  • Agent mode memangkas output untuk model AI sampai 59 persen dalam uji TPC-H.
  • File database DuckDB 2.0 tidak bisa dibuka versi lama, jadi cadangkan dulu sebelum upgrade.
  • DuckDB 1.4 berhenti didukung pada 17 November 2026.

Referensi

  1. DuckDB (2026). Announcing DuckDB 2.0.0 LTS "Cinnamon Teal"
  2. DuckDB (2026). A Preview of DuckDB v2.0
  3. DuckDB (2026). Asynchronous I/O in DuckDB
  4. DuckDB (2026). Agent Mode in the DuckDB CLI
  5. DuckDB (2026). The PEG Parser in DuckDB 2.0
  6. DuckDB (2026). Announcing DuckDB 1.5.3
  7. DuckDB (2026). Release Calendar
  8. Tech AI Wire (2026). Tools This Week: October 23, 2026 - DuckDB 2.0, TorchTPU
  9. Mughu (2026). DuckDB: Pengertian, Fungsi, dan Kelebihan Menggunakannya

Pertanyaan Umum

Kapan DuckDB 2.0 dirilis?
DuckDB 2.0.0 dirilis pada 21 Oktober 2026 dengan nama kode "Cinnamon Teal". Versi ini berstatus LTS dan akan didukung setidaknya sampai Oktober 2027.
Apakah DuckDB 2.0 gratis?
Ya. DuckDB adalah proyek open source, sehingga bisa diunduh dan dipakai tanpa biaya, baik untuk belajar maupun untuk keperluan kerja.
Apakah file database lama aman setelah upgrade ke DuckDB 2.0?
DuckDB 2.0 tetap bisa membaca dan menulis file database lama. Masalahnya ada di arah sebaliknya, karena file yang dibuat oleh DuckDB 2.0 tidak bisa dibuka oleh versi sebelum 2.0. Karena itu, sebaiknya cadangkan file sebelum upgrade.
Bagaimana cara kerja agent mode di DuckDB 2.0?
Agent mode adalah mode khusus di CLI yang aktif otomatis saat DuckDB dijalankan oleh agen AI seperti Claude Code, Codex, atau Cursor. Hasil query ditampilkan lebih ringkas dalam tabel Markdown dan error dilaporkan sebagai JSON, sehingga output yang dibaca model berkurang sampai 59 persen dalam uji TPC-H.
Sampai kapan DuckDB 1.4 dan 1.5 didukung?
DuckDB 1.4 didukung sampai 17 November 2026. DuckDB 1.5 diperpanjang dukungannya sampai Maret 2027, sehingga bisa dipakai sebagai jembatan sebelum pindah penuh ke 2.0.
Apakah DuckDB 2.0 masih jalan di Mac Intel?
Untuk saat ini masih, tapi ekstensi komunitas sudah tidak dibangun untuk Mac Intel. Tim DuckDB menyebut versi 2.1 akan berhenti mendukung platform osx_amd64.

Kesimpulan

DuckDB 2.0 adalah lompatan besar dari database analitik yang dulu dikenal sebagai "SQLite untuk analitik". Kini DuckDB bisa berjalan sebagai server, membaca data cloud lebih cepat, mengolah JSON dengan lebih efisien, dan bahkan menyesuaikan diri saat dijalankan oleh agen AI.

Buat pengguna di Indonesia, semuanya tetap gratis dan ringan dijalankan di laptop. Yang perlu diingat hanya soal upgrade: cadangkan file database, uji di lingkungan terpisah, dan perhatikan tenggat DuckDB 1.4 pada 17 November 2026. Kalau sistemnya kritis, menunggu patch pertama di bulan November juga pilihan yang masuk akal.

Komentar (0)

Belum ada komentar. Jadilah yang pertama berbagi pendapat!

Tinggalkan komentar