Kaluaran Redis 6.0 DBMS

Disayagikeun release DBMS Redis 6.0, milik kelas sistem NoSQL. Redis nyadiakeun fungsi Memcached-kawas pikeun nyimpen data konci / nilai, ditingkatkeun ku rojongan pikeun format data terstruktur kayaning béréndélan, hashes, sarta susunan, sarta kamampuhan pikeun ngajalankeun sisi server Lua Handler Aksara. Kodeu proyék dibekelan handapeun lisénsi BSD. Modul tambahan anu nawiskeun kamampuan canggih pikeun pangguna perusahaan sapertos RediSearch, RedisGraph, RedisJSON, RedisML, RedisBloom saprak taun ka tukang disadiakeun handapeun lisénsi RSAL proprietary. Ngembangkeun versi kabuka tina modul ieu dina lisénsi AGPLv3 dituluykeun ku proyék GoodFORM.

Beda sareng Memcached, Redis nyayogikeun panyimpen data anu terus-terusan dina disk sareng ngajamin kasalametan pangkalan data upami aya pareum darurat. Kodeu sumber proyék disebarkeun dina lisénsi BSD. Perpustakaan klien sayogi pikeun basa anu pang populerna, kalebet Perl, Python, PHP, Java, Ruby, sareng Tcl. Redis ngarojong transaksi, nu ngidinan Anjeun pikeun ngaéksekusi grup paréntah dina hiji hambalan, mastikeun konsistensi jeung konsistensi (paréntah ti requests séjén teu bisa ngaganggu) dina palaksanaan set dibikeun paréntah, sarta dina kasus masalah, ngidinan Anjeun pikeun gulung deui. parobahan. Sadaya data pinuh sindangan dina RAM.

Paréntah sapertos increment / decrement, daptar standar sareng operasi set (union, intersection), nami konci, sababaraha pilihan, sareng fungsi asihan disayogikeun pikeun manajemén data. Dua modeu panyimpen dirojong: sinkronisasi périodik data kana disk sareng pangropéa log parobahan dina disk. Dina kasus kadua, kaamanan lengkep sadaya parobahan dijamin. Kasebut nyaéta dimungkinkeun pikeun ngatur réplikasi data master-budak ka sababaraha server, dilaksanakeun dina modeu non-blocking. Mode olahtalatah "nyebarkeun / ngalanggan" ogé sayogi, dimana saluran diciptakeun, pesen anu disebarkeun ka klien ku langganan.

konci pamutahiranditambahkeun dina Redis 6.0:

  • Sacara standar, protokol RESP3 anyar diajukeun, tapi setelan sambungan dimimitian dina mode RESP2 sarta klien pindah ka protokol anyar ngan lamun paréntah HELLO anyar dipaké nalika negotiating sambungan. RESP3 ngidinan Anjeun pikeun langsung balik tipe data kompléks tanpa kudu ngarobah arrays generik di sisi klien tur ku misahkeun tipe balik.
  • Pangrojong daptar kontrol aksés (ACL), ngamungkinkeun anjeun sacara akurat nangtukeun operasi mana anu tiasa dilakukeun ku klien sareng anu henteu tiasa. ACLs ogé ngamungkinkeun pikeun nangtayungan tina kamungkinan kasalahan salila pangwangunan, Contona, hiji Handler nu ngalakukeun ukur operasi BRPOPLPUSH bisa dilarang ngajalankeun operasi séjén, sarta lamun panggero FLUSHALL ditambahkeun salila debugging ngahaja poho dina kode produksi, ieu bakal. teu ngakibatkeun masalah. Nerapkeun hiji ACL teu merlukeun overhead tambahan sarta ampir euweuh dampak dina kinerja. modul panganteur ogé geus disiapkeun pikeun ACL, sahingga mungkin nyieun métode auténtikasi sorangan. Pikeun nempo sagala palanggaran ACL dirékam, paréntah "ACL LOG" disadiakeun. Pikeun ngahasilkeun konci sési anu teu kaduga, paréntah "ACL GENPASS" parantos ditambah nganggo HMAC basis SHA256.
  • sokongan SSL / TLS pikeun énkripsi saluran komunikasi antara klien sareng server.
  • sokongan data cache dina sisi klien. Pikeun reconcile cache klien-sisi jeung kaayaan database sadia dua modus: 1. Remembering on server kenop nu klien saméméhna dipénta dina urutan pikeun nginpokeun eta ngeunaan leungitna relevansi tina entri dina cache klien. 2. Mékanisme "panyiaran", dimana klien ngalanggan awalan konci tangtu sareng server ngabéjaan upami konci anu aya dina awalan ieu robih. Kauntungannana mode "panyiaran" nyaéta yén server henteu miceunan mémori tambahan pikeun nyimpen peta nilai-nilai anu disimpen dina sisi klien, tapi kalemahanna nyaéta jumlah pesen anu dikirimkeun naék.
  • Calo pesen Disque, anu ngamungkinkeun anjeun ngagunakeun Redis pikeun ngolah antrian pesen, parantos dipiceun tina struktur dasar dina modul misah.
  • Ditambahkeun Proksi Kluster, proxy pikeun klaster server Redis, ngamungkinkeun klien pikeun ngatur gawé kalawan sababaraha server Redis saolah-olah éta hiji conto tunggal. Proxy tiasa ngirimkeun pamundut ka titik kalayan data anu diperyogikeun, sambungan multiplex, ngonpigurasikeun deui klaster upami gagal titik dideteksi, sareng ngalaksanakeun pamundut anu ngalangkungan sababaraha titik.
  • API pikeun nulis modul geus nyata ningkat, dasarna ngarobah Redis kana kerangka nu ngidinan Anjeun pikeun nyieun sistem dina bentuk modul add-on.
  • Modeu réplikasi parantos dilaksanakeun dimana file RDB langsung dihapus saatos dianggo.
  • Protokol réplikasi PSYNC2 parantos ningkat, anu ngamungkinkeun pikeun ngalakukeun resynchronization parsial langkung sering, ku ningkatkeun kasempetan pikeun ngaidentipikasi offset anu umum pikeun réplika sareng master.
  • Loading file RDB geus gancangan. Gumantung kana eusi file, akselerasi antara 20 dugi ka 30%. Palaksanaan paréntah INFO parantos gancangan sacara signifikan nalika aya sajumlah ageung klien anu nyambung.
  • A paréntah STRALGO anyar geus ditambahkeun jeung palaksanaan algoritma processing string kompléks. Ayeuna, ngan hiji algoritma LCS (pangpanjangna umum subsequence) sadia, nu bisa mangpaat lamun ngabandingkeun RNA jeung DNA runtuyan.

sumber: opennet.ru

Tambahkeun komentar