Rilis DuckDB 0.10.0, varian SQLite untuk kueri analitis

DuckDB 0.10.0 telah dirilis. Versi ini menggabungkan ukuran ringkas SQLite, dukungan pustaka yang dapat disematkan, penyimpanan basis data berkas tunggal, dan antarmuka CLI yang ramah pengguna. DuckDB juga dilengkapi berbagai alat dan optimasi untuk menjalankan kueri analitis yang mencakup sebagian besar data tersimpan, seperti menggabungkan seluruh isi tabel atau menggabungkan beberapa tabel besar. Kode proyek didistribusikan di bawah lisensi MIT. Pengembangan saat ini masih dalam tahap rilis eksperimental, karena format penyimpanannya belum stabil dan bervariasi antar versi.

DuckDB menyediakan dialek SQL tingkat lanjut yang mencakup kemampuan tambahan untuk menangani kueri yang sangat kompleks dan memakan waktu. Penggunaan tipe kompleks (array, struktur, gabungan) dan kemampuan untuk mengeksekusi subkueri korelasi yang arbitrer dan bersarang didukung. Ini mendukung menjalankan beberapa kueri secara bersamaan, menjalankan kueri langsung dari file CSV dan Parket. Dimungkinkan untuk mengimpor dari DBMS PostgreSQL.

Selain kode shell dari SQLite, proyek ini menggunakan parser dari PostgreSQL di perpustakaan terpisah, komponen Date Math dari MonetDB, implementasi fungsi jendelanya sendiri (berdasarkan algoritma Agregasi Pohon Segmen), prosesor ekspresi reguler berdasarkan perpustakaan RE2, pengoptimal kuerinya sendiri, dan mekanisme kontrol MVCC untuk eksekusi tugas secara simultan (Kontrol Konkurensi Multi-Versi), serta mesin eksekusi kueri yang divektorisasi berdasarkan algoritma Eksekusi Kueri Hyper-Pipelining, yang memungkinkan kumpulan nilai dalam jumlah besar ​​untuk diproses sekaligus dalam satu operasi.

Perubahan dalam rilis baru meliputi:

  • Performa penguraian data CSV telah ditingkatkan secara signifikan. Misalnya, waktu membaca berkas CSV dengan 11 juta baris berkurang dari 2.6 detik menjadi 1.15 detik di versi baru, dan waktu menjalankan operasi "SELECT COUNT(*)" pada berkas CSV berkurang dari 1.8 detik menjadi 0.3 detik.
  • Menambahkan dukungan untuk array berukuran tetap, yang menyerupai daftar yang berisi sejumlah elemen tetap ("CREATE TABLE vectors(v DOUBLE[3]);").
  • Dukungan tambahan untuk terhubung ke DBMS MySQL, PostgreSQL, dan SQLite, memungkinkan Anda memuat data dari DBMS eksternal ke DuckDB dan memindahkannya antar sistem yang berbeda. Database eksternal diakses menggunakan tabel standar. ATTACH 'postgres:dbname=postgresscanner' AS postgres; SELECT title, release_year, length FROM postgres.film LIMIT 5;
  • Menambahkan dukungan untuk ekspresi "KOMENTAR PADA" untuk menyimpan komentar tentang suatu objek dalam basis data.
  • Menambahkan dukungan untuk pernyataan "COPY FROM DATABASE" untuk menyalin semua konten dari satu basis data ke basis data lainnya.
  • Menambahkan dukungan untuk pengubah "ALL" dalam ekspresi EXCEPT dan INTERSECT.
  • Tipe yang diimplementasikan »

    Sumber: opennet.ru
Beli hosting yang andal untuk situs dengan perlindungan DDoS, server VPS VDS 🔥 Beli hosting website andal dengan perlindungan DDoS, server VPS VDS | ProHoster