Bolo to oznámené vydanie novej verzie «Valkey 8.1», fork Redis, ktorý sa zrodil po jeho prechode na proprietárnu licenciu a ktorý sa snaží zachovať otvorenú filozofiu pôvodného projektu.
Valkey 8.1 Obsahuje veľké množstvo vylepšení a zmien, ktorého hlavným zameraním je optimalizácia výkonu, ktorá znižuje latenciu, zvyšuje efektivitu pamäte a nové modulárne možnosti.
Kľúčové nové funkcie vo Valkey 8.1
One,es z najvýznamnejších zmien v tejto verzii je úplné prepísanie hašovacej tabuľky, ktorý sa používa v ukladaní údajov kľúč – hodnota, ako aj v typoch štruktúrovaných údajov, ako sú Hash, Set a Sorted Set. Vďaka tomuto redizajnu, Dosiahlo sa zníženie využitia pamäte: o 20 bajtov menej na kľúč bez TTL, a až 30 bajtov, ak má kľúč definovanú životnosť. Okrem toho zníženie náhodného prístupu k pamäti viedlo k 10% zvýšeniu výkonu v jednovláknových I/O prostrediach.
Ďalšou novinkou vo Valkey 8.1 je iterácia klávesov pri operáciách, ako je príkaz KEYS resp Prenos kľúčov medzi uzlami v klastri teraz obsahuje systém predbežného načítania vyrovnávacej pamäte, čo umožňuje, aby bol ďalší kľúč k dispozícii pred začatím jeho spracovania. Tento prístup zvýšil rýchlosť vyhľadávania kľúčov 3,5-krát vďaka lepšiemu využitiu vyrovnávacej pamäte procesora.
Viacvláknové I/O a vylepšenia TLS
Valkey pokračuje v prechode na viacvláknový I/O model. Teraz, Spracovanie pripojenia TLS sa vykonáva v samostatných tokoch, ktorá strojnásobila kapacitu na prijímanie nových spojov. Funkcie ako SSL_pending() a ERR_clear_error() boli tiež izolované do samostatných vlákien, čo viedlo k zvýšeniu výkonu o 10 % pri operáciách SET a 22 % pri operáciách GET.
Replikácia bola vylepšená, najmä v prostrediach s aktívnym TLS, čím sa eliminujú nadbytočné operácie, ako sú zbytočné kontrolné súčty. Výsledkom je 18% zlepšenie úplnej synchronizácie počas bezdiskovej replikácie a 47% zníženie nákladov na operácie kopírovania a zápisu.
Optimalizácie na usporiadaných množinách a pravdepodobnostných typoch
El príkaz ZRANK pre objednané súpravy bola optimalizovaná a Teraz je o 45 % rýchlejší, zatiaľ čo ZADD prijal pokyny SIMD dosiahnuť vyššiu efektivitu. Pre pravdepodobnostné dátové typy bolo vylepšené použitie HyperLogLog, aby využívalo len 12 KB pevnej pamäte a použitie inštrukcií AVX2 umožnilo znásobiť výkon operácií PFMERGE a PFCOUNT až 12-krát a BITCOUNT až 5-krát.
Neprerušovaná aktívna defragmentácia a väčšia kontrola nad registrami
El Vylepšený bol aj systém aktívnej defragmentácie aby sa predišlo zablokovaniu alebo oneskoreniu. Teraz každý defragmentačný cyklus trvá iba 500 mikrosekúnd, a bola implementovaná stratégia proti hladovaniu, aby sa predišlo odkladu týchto úloh z dôvodu dlhodobých operácií.
Boli zavedené Nové možnosti konfigurácie pre formátovanie záznamov, vrátane vlastných formátov času a nového režimu COMMANDLOG, ktorý zaznamenáva dlhé požiadavky a odpovede. Okrem toho bol príkaz LATENCY LATEST rozšírený o nové metriky, ktoré poskytujú lepšiu viditeľnosť zaznamenaných latencií vrcholov a objemu.
Nové funkcie, moduly a podpora
Valkey teraz vám umožňuje vykonať operáciu SET IFEQ, ktorý podmieňuje zápis kľúča na aktuálnu hodnotu. Tiež Zavádza sa modulárna podpora pre skriptovacie stroje, čím sa otvára možnosť používania alternatívnych jazykov k Lua prostredníctvom vlastných modulov.
V tejto verzii tiež debut niekoľkých modulov:
- Vyhľadávací modul (Google): Vyhľadávač podobnosti vektorov, ideálny pre prípady strojového učenia, ktoré vyžadujú nízku latenciu a vysokú priepustnosť.
- Modul JSON (AWS): umožňuje priamu manipuláciu s fragmentmi dokumentov JSON, čím sa zabráni úplnému spracovaniu obsahu na klientovi.
- Bloom Filter Module (AWS): Implementácia Bloomových filtrov, užitočných na určenie možného členstva prvku v množine, s pravdepodobnostnou účinnosťou
Nakoniec, ak máte záujem dozvedieť sa o ňom viac, podrobnosti si môžete prečítať v nasledujúci odkaz.