I-Valkey 8.1: I-Redis fork ifaka ukusebenza, ukuthuthukiswa kwenkumbulo, namamojula amasha

Valkey

Sekumenyezelwe ukukhishwa kwenguqulo entsha ye-"Valkey 8.1", imfoloko ye-Redis eyazalwa ngemva kokushintshelwa kwelayisensi yobunikazi, futhi efuna ukugcina ifilosofi evulekile yephrojekthi yokuqala.

I-Valkey 8.1 Ifaka inani elikhulu lentuthuko nezinguquko, okugxile kakhulu ekuthuthukisweni kokusebenza okunciphisa ukubambezeleka, okwandisa ukusebenza kahle kwenkumbulo namandla amasha e-modular.

Izici ezintsha ezibalulekile ku-Valkey 8.1

Uno wezinguquko ezibaluleke kakhulu kule nguqulo yi- ukubhala kabusha okuphelele kwethebula le-hashi, esetshenziswa kukho kokubili isitoreji sedatha yenani elingukhiye nezinhlobo zedatha ehlelekile njenge-Hash, Setha, kanye Nesethi Ehleliwe. Ngenxa yalokhu kwakhiwa kabusha, Ukwehliswa kokusetshenziswa kwenkumbulo kufinyelelwe: amabhayithi angu-20 ngaphansi kokhiye ngamunye ngaphandle kwe-TTL, futhi kufika kumabhayithi angu-30 uma ukhiye unesikhathi sokuphila esichaziwe. Ukwengeza, ukuncishiswa kokufinyelela kwenkumbulo okungahleliwe kuholele ekuthuthukisweni kokusebenza okungu-10% ezindaweni ezinentambo eyodwa ye-I/O.

Esinye isici esisha ku-Valkey 8.1 ukuthi i-iteration phezu kokhiye ekusebenzeni okufana nomyalo we-KEYS noma Ukudluliswa okubalulekile phakathi kwama-node kuqoqo manje sekunesistimu yokulayisha inqolobane, okuvumela ukhiye olandelayo ukuthi utholakale ngaphambi kokuthi ukucubungula kuqale. Le ndlela inyuse isivinini sokubheka ukhiye izikhathi ezingu-3,5 ngokusebenzisa kangcono inqolobane yokucubungula.

Ukuthuthukiswa kwe-I/O ne-TLS enezintambo eziningi

I-Valkey iyaqhubeka nokuguqukela kumodeli ye-I/O enezintambo eziningi. Manje, i Ukucutshungulwa kokuxhumeka kwe-TLS kwenziwa ngokusakaza okuhlukene, esiphindeke kathathu umthamo wokwamukela ukuxhumana okusha. Imisebenzi efana ne-SSL_pending() kanye ne-ERR_clear_error() nayo ihlukaniswe yaba uchungechunge oluhlukene, okuholele ekwenyukeni kokusebenza okungu-10% kwemisebenzi ye-SET kanye nokwenyuka okungu-22% kwemisebenzi ye-GET.

Ukuphindaphinda kuthuthukisiwe, ikakhulukazi ezindaweni ezine-TLS esebenzayo, eqeda imisebenzi engasadingeki njengamashekesinga angadingekile. Lokhu kuholele ekuthuthukisweni kwe-18% ekuvumelaniseni okuphelele ngesikhathi sokuphindaphinda kwe-diskless kanye nokwehliswa kwe-47% yezindleko zokukopisha nokubhala imisebenzi.

Ukuthuthukisa kumasethi a-odwe kanye nezinhlobo ezingenzeka

El umyalo we-ZRANK amasethi a-odiwe alungiselelwe futhi Manje isishesha ngo-45%, kuyilapho i-ZADD seyamukele imiyalelo ye-SIMD ukuze kuzuzwe ukusebenza kahle okukhulu. Ezinhlotsheni zedatha engenzeka, ukusetshenziswa kwe-HyperLogLog kuthuthukisiwe ukuze kusetshenziswe kuphela u-12 KB wememori engaguquki, futhi ukusetshenziswa kwemiyalo ye-AVX2 kuvumele ukusebenza kwe-PFMERGE kanye nokusebenza kwe-PFCOUNT ukuthi kuphindaphindwe kufika izikhathi ezingu-12, kanye ne-BITCOUNT kufika izikhathi ezingu-5.

Ukuhlukaniswa okusebenzayo okungaphazamiseki kanye nokulawula okwengeziwe kokubhalisiwe

El Isistimu yokwahlukaniswa okusebenzayo nayo ithuthukisiwe ukugwema ukuvinjwa noma ukubambezeleka. Manje, umjikelezo we-defragmentation ngamunye uhlala kuphela ama-microseconds angama-500, futhi isu lokulwa nendlala seliqalisiwe ukuvimbela le misebenzi ukuthi ihlehliswe ngenxa yokusebenza isikhathi eside.

Kwethulwe Izinketho ezintsha zokucushwa zokufometha irekhodi, okuhlanganisa amafomethi esikhathi sangokwezifiso kanye nemodi entsha ye-COMMANDLOG efaka izicelo ezinde nezimpendulo. Ukwengeza, umyalo we-LATENCY LATEST unwetshwe ngamamethrikhi amasha, unikeza ukubonakala okukhulu ekubambeni okuphezulu kanye nevolumu erekhodiwe.

Izici ezintsha, amamojula nokusekelwa

Valkey manje ikuvumela ukuthi wenze ukusebenza kwe-SET IFEQ, ombandela wokubhalwa kokhiye enanini lamanje. Futhi Kwethulwa ukwesekwa okuyimojuli kwezinjini zombhalo, ukuvula ithuba lokusebenzisa ezinye izilimi ku-Lua ngamamojula wangokwezifiso.

Kule nguqulo futhi amamojula ambalwa debut:

  • Sesha Imojuli (Google): Injini yokusesha efana nevekhtha, ilungele izimo zokufunda zomshini ezidinga ukubambezeleka okuphansi kanye nokusebenza okuphezulu.
  • I-JSON Module (AWS): ivumela ukukhohliswa okuqondile kwezingcezu zedokhumenti ye-JSON, igwema ukucutshungulwa okuphelele kokuqukethwe kuklayenti.
  • Imojuli yesihlungi se-Bloom (AWS): Ukusetshenziswa kwezihlungi ze-Bloom, ziwusizo ekunqumeni ubulungu obungaba khona be-elementi kusethi, ngokusebenza kahle okungenzeka

Okokugcina, uma ungathanda ukwazi okwengeziwe ngakho, ungathintana nemininingwane ku isixhumanisi esilandelayo.