Bylo to oznámeno vydání nové verze «Valkey 8.1», fork Redis, který se zrodil po jeho přechodu na proprietární licenci a který se snaží zachovat otevřenou filozofii původního projektu.
Valkey 8.1 Obsahuje velké množství vylepšení a změn, jehož hlavním zaměřením je optimalizace výkonu, která snižuje latenci, zvyšuje efektivitu paměti a nové modulární schopnosti.
Klíčové nové funkce ve Valkey 8.1
Uno z nejvýznamnějších změn v této verzi je kompletní přepsání hash tabulky, který se používá jak v úložišti dat klíč–hodnota, tak v typech strukturovaných dat, jako je Hash, Set a Sorted Set. Díky tomuto redesignu Bylo dosaženo snížení využití paměti: o 20 bajtů méně na klíč bez TTL, a až 30 bajtů, pokud má klíč definovanou životnost. Snížení přístupu k náhodné paměti navíc vedlo k 10% zlepšení výkonu v jednovláknových I/O prostředích.
Další novinkou ve Valkey 8.1 je iterace přes klíče v operacích, jako je příkaz KEYS nebo Přenos klíčů mezi uzly v clusteru nyní obsahuje systém předběžného načítání mezipaměti, což umožňuje, aby byl další klíč k dispozici před zahájením zpracování. Tento přístup zvýšil rychlost vyhledávání klíčů 3,5krát díky lepšímu využití mezipaměti procesoru.
Vylepšení vícevláknového I/O a TLS
Valkey pokračuje v přechodu na vícevláknový I/O model. Nyní, Zpracování připojení TLS se provádí v samostatných proudech, která ztrojnásobila kapacitu pro přijímání nových spojů. Funkce jako SSL_pending() a ERR_clear_error() byly také izolovány do samostatných vláken, což vedlo k 10% zvýšení výkonu pro operace SET a 22% zvýšení u operací GET.
Replikace byla vylepšena, zejména v prostředích s aktivním TLS, čímž se eliminují nadbytečné operace, jako jsou zbytečné kontrolní součty. To vedlo k 18% zlepšení plné synchronizace během bezdiskové replikace a 47% snížení nákladů na operace kopírování a zápisu.
Optimalizace na uspořádaných množinách a pravděpodobnostních typech
El příkaz ZRANK pro objednané sady byla optimalizována a Nyní je o 45 % rychlejší, zatímco ZADD přijal instrukce SIMD k dosažení větší efektivity. U pravděpodobnostních datových typů bylo vylepšeno použití HyperLogLog na využití pouze 12 KB pevné paměti a použití instrukcí AVX2 umožnilo až 12násobné násobení výkonu operací PFMERGE a PFCOUNT a až 5násobné násobení BITCOUNT.
Nepřerušovaná aktivní defragmentace a větší kontrola nad registry
El Vylepšen byl také systém aktivní defragmentace aby nedošlo k zablokování nebo zpoždění. Nyní každý defragmentační cyklus trvá pouze 500 mikrosekund, a byla zavedena strategie proti hladovění, aby se zabránilo odkládání těchto úkolů z důvodu dlouhodobého provozu.
Byly zavedeny Nové možnosti konfigurace pro formátování záznamů, včetně vlastních formátů času a nového režimu COMMANDLOG, který zaznamenává dlouhé požadavky a odpovědi. Příkaz LATENCY LATEST byl navíc rozšířen o nové metriky, které poskytují lepší přehled o zaznamenaných latencích špiček a objemu.
Nové funkce, moduly a podpora
Valkey nyní vám umožňuje provést operaci SET IFEQ, který podmiňuje zápis klíče na aktuální hodnotu. Také Je zavedena modulární podpora pro skriptovací stroje, čímž se otevírá možnost použití alternativních jazyků k Lua prostřednictvím vlastních modulů.
V této verzi také debut několika modulů:
- Vyhledávací modul (Google): Vyhledávač podobnosti vektorů, ideální pro případy strojového učení, které vyžadují nízkou latenci a vysokou propustnost.
- Modul JSON (AWS): umožňuje přímou manipulaci s fragmenty dokumentů JSON, čímž se vyhne kompletnímu zpracování obsahu na klientovi.
- Bloom Filter Module (AWS): Implementace Bloomových filtrů, užitečných pro určení možné příslušnosti prvku v množině, s pravděpodobnostní účinností
A konečně, pokud máte zájem dozvědět se o tom více, můžete se podívat na podrobnosti v následující odkaz.