Baru-baru ini keluaran versi baharu DuckDB 0.5.0 telah diumumkan, iaitu sistem pengurusan pangkalan data analitik (DBMS) yang sedang dibangunkan yang digunakan oleh Google, Facebook dan Airbnb.
DuckDB ialah sistem pangkalan data analitik berprestasi tinggi. Ia direka untuk menjadi pantas, boleh dipercayai dan mudah digunakan. DuckDB menyediakan dialek SQL yang kaya, dengan sokongan yang jauh melebihi SQL asas. DuckDB menyokong subkueri berkorelasi arbitrari dan bersarang, fungsi tetingkap, pengumpulan, jenis kompleks (tatasusunan, struct) dan banyak lagi.
Antara ciri utamanya, yang berikut menonjol:
- Pemasangan mudah
- Bersepadu: tiada pengurusan pelayan
- Format storan fail tunggal
- Pemprosesan analisis yang cepat
- Pemindahan pantas antara R/Python dan RDBMS
- Ia tidak bergantung kepada mana-mana keadaan luaran. Contohnya, fail konfigurasi berasingan, pembolehubah persekitaran.
- Format storan fail tunggal
- Antara muka boleh gubah. API Programmatic SQL yang Fasih
- ACID sepenuhnya melalui MVCC
Mengenai DuckDB 0.5.0
Antara kebaharuan adalah "out of core", yang bertujuan untuk menyelesaikan masalah yang mungkin timbul apabila data yang diproses lebih besar daripada memori dengan mencadangkan hasil perantaraan.
Versi baru menggunakan indeks Adaptive Radix Tree (ART). untuk menggunakan sekatan dan mempercepatkan penapis pertanyaan. Sehingga kini, indeks tidak berterusan, membawa kepada isu seperti kehilangan maklumat indeks dan masa muat semula yang panjang untuk jadual yang dikekang data.
SENI(ART) ia, pada dasarnya, percubaan untuk menggunakan mampatan menegak dan mendatar untuk mencipta struktur indeks padat. Niat ialah struktur data seperti pepohon, di mana setiap peringkat pepohon mengandungi maklumat tentang beberapa bahagian set data. Mereka biasanya digambarkan oleh rentetan watak.
Projek ini juga menambah pengoptimuman pesanan gabungan, masalah biasa dalam pangkalan data analisis. Hyoun Park, Ketua Pegawai Eksekutif dan Ketua Penganalisis di Amalgam Insights, berkata bahawa pembezaan DuckDB datang daripada fakta bahawa ia adalah aplikasi kecil yang berfungsi dalam aliran kerja berasaskan kod untuk mengimbas storan data yang besar dengan cepat.
“DuckDB selalunya boleh menjalankan pertanyaan secara langsung pada data tanpa pemprosesan perantaraan, yang meningkatkan pemprosesan. Dari sudut pandangan teknologi semata-mata, ia agak serupa dengan Actian Vector, yang juga menggunakan pendekatan pertanyaan OLAP vektor kolumnar, walaupun Actian direka untuk mengambil data dan bukannya bekerja pada proses atau memuatkan kerja tertentu. »
DuckDB Labs menyediakan nasihat dan sokongan. Pengasas bersama dan Ketua Pegawai Eksekutif Hannes Mühleisen, yang turut menulis kod itu dan mengekalkan projek itu, berkata beliau telah diilhamkan oleh SQLite, enjin pangkalan data OLTP tanpa pelayan, di mana beliau melihat peluang untuk pendekatan yang sama, tetapi untuk analisis.
DuckDB juga sering digunakan sebagai sebahagian daripada analisis atau timbunan pengurusan. data yang lebih besar. Sebagai contoh, jika seseorang membina aplikasi tersuai yang mengumpul data dan kemudian mahu mencipta antara muka SQL, mereka perlu menyalin data terlebih dahulu dan mengalihkannya ke sistem lain, yang boleh menyebabkan masalah penyegerakan, jelasnya.
Muat turun dan dapatkan
Adalah penting untuk menyebut bahawa halaman utama dengan jelas menyatakan bahawa ia tidak boleh digunakan untuk "pemasangan pelanggan/pelayan yang besar untuk penyimpanan data perusahaan berpusat".
Projek ini sedang berusaha untuk mengeluarkan versi 1.0, selepas itu ia tidak lagi boleh membuat perubahan. Kerja-kerja ahli akademik Pusat Matematik dan Sains Komputer Teoritikal Centrum Wiskunde & Informatica di Amsterdam, DuckDB disepadukan ke dalam proses hos, perlu diperhatikan bahawa tiada perisian pelayan DBMS untuk dipasang, dikemas kini atau diselenggara.
Sebagai contoh, pakej DuckDB Python boleh menjalankan pertanyaan secara langsung pada data daripada perpustakaan perisian Python, tanpa mengimport atau menyalin data. DuckDB ditulis dalam C++, percuma dan sumber terbuka di bawah lesen MIT.
Anda boleh mengetahui lebih lanjut mengenainya serta merujuk manual pemasangan, Dalam pautan berikut.