Valkey 8.1: Garpu Redis menampilkan prestasi, peningkatan memori dan modul baharu

Valkey

Ia telah diumumkan keluaran versi baharu «Valkey 8.1», cabang Redis yang dilahirkan selepas peralihannya kepada lesen proprietari, dan yang berusaha untuk mengekalkan falsafah terbuka projek asal.

Valkey 8.1 Ia menampilkan sejumlah besar penambahbaikan dan perubahan, yang fokus utamanya adalah pada pengoptimuman prestasi yang mengurangkan kependaman, meningkatkan kecekapan memori dan keupayaan modular baharu.

Ciri baharu utama dalam Valkey 8.1

A daripada perubahan yang paling ketara dalam versi ini ialah menulis semula lengkap jadual cincang, digunakan dalam kedua-dua storan data nilai kunci dan jenis data berstruktur seperti Hash, Set dan Set Isih. Terima kasih kepada reka bentuk semula ini, Pengurangan dalam penggunaan memori telah dicapai: 20 bait kurang setiap kunci tanpa TTL, dan sehingga 30 bait jika kunci mempunyai jangka hayat yang ditentukan. Di samping itu, pengurangan dalam akses memori rawak telah membawa kepada peningkatan prestasi sebanyak 10% dalam persekitaran I/O berbenang tunggal.

Satu lagi ciri baharu dalam Valkey 8.1 ialah lelaran ke atas kunci dalam operasi seperti arahan KEYS atau Pemindahan kunci antara nod dalam kelompok kini mempunyai sistem pramuat cache, yang membolehkan kunci seterusnya tersedia sebelum pemprosesan bermula. Pendekatan ini telah meningkatkan kelajuan carian kunci sebanyak 3,5 kali ganda dengan menggunakan cache pemproses dengan lebih baik.

Penambahbaikan I/O dan TLS berbilang benang

Valkey meneruskan peralihannya kepada model I/O berbilang benang. Sekarang, yang Pemprosesan sambungan TLS dilakukan dalam aliran berasingan, yang telah menggandakan kapasiti untuk menerima sambungan baharu. Fungsi seperti SSL_pending() dan ERR_clear_error() juga telah diasingkan ke dalam benang yang berasingan, menghasilkan peningkatan prestasi 10% untuk operasi SET dan peningkatan 22% untuk operasi GET.

Replikasi telah dipertingkatkan, terutamanya dalam persekitaran dengan TLS aktif, menghapuskan operasi berlebihan seperti jumlah semak yang tidak perlu. Ini telah menghasilkan peningkatan sebanyak 18% dalam penyegerakan penuh semasa replikasi tanpa cakera dan pengurangan 47% dalam kos operasi salin dan tulis.

Pengoptimuman pada set tertib dan jenis kebarangkalian

El arahan ZRANK untuk set yang dipesan telah dioptimumkan dan Ia kini 45% lebih pantas, manakala ZADD telah menerima pakai arahan SIMD untuk mencapai kecekapan yang lebih tinggi. Untuk jenis data kebarangkalian, penggunaan HyperLogLog telah dipertingkatkan untuk menggunakan hanya 12 KB memori tetap, dan penggunaan arahan AVX2 telah membolehkan prestasi operasi PFMERGE dan PFCOUNT didarab sehingga 12 kali, dan BITCOUNT sehingga 5 kali.

Defragmentasi aktif tanpa gangguan dan lebih banyak kawalan ke atas pendaftaran

El sistem defragmentasi aktif juga telah ditambah baik untuk mengelakkan tersumbat atau kelewatan. Kini, setiap kitaran defragmentasi hanya berlangsung selama 500 mikrosaat, dan strategi anti-kebuluran telah dilaksanakan untuk mengelakkan tugas-tugas ini daripada ditangguhkan kerana operasi jangka panjang.

Telah diperkenalkan Pilihan konfigurasi baharu untuk pemformatan rekod, termasuk format masa tersuai dan mod COMMANDLOG baharu yang merekodkan permintaan dan respons yang panjang. Selain itu, arahan TERKINI LATENCY telah dikembangkan dengan metrik baharu, memberikan keterlihatan yang lebih besar kepada kependaman puncak dan volum yang direkodkan.

Ciri, modul dan sokongan baharu

Valkey kini membolehkan anda melaksanakan operasi SET IFEQ, yang menetapkan penulisan kunci kepada nilai semasa. Juga Sokongan modular untuk enjin skrip diperkenalkan, membuka kemungkinan menggunakan bahasa alternatif kepada Lua melalui modul tersuai.

Dalam versi ini juga beberapa modul debut:

  • Modul Carian (Google): Enjin carian persamaan vektor, sesuai untuk kes pembelajaran mesin yang menuntut kependaman rendah dan daya pemprosesan yang tinggi.
  • Modul JSON (AWS): membenarkan manipulasi langsung serpihan dokumen JSON, mengelakkan pemprosesan lengkap kandungan pada klien.
  • Modul Penapis Bloom (AWS): Pelaksanaan penapis Bloom, berguna untuk menentukan kemungkinan keahlian unsur dalam set, dengan kecekapan kebarangkalian

Akhir sekali, jika anda berminat untuk mengetahui lebih lanjut mengenainya, anda boleh merujuk butiran dalam pautan berikut.