Byla vydána Valkey 9.0, fork databáze Redis.

Byl vydán Valkey 9.0, fork Redisu z loňského roku. Fork vznikl poté, co byl Redis 7.4 převeden na proprietární licenci. S vydáním Redisu 8.0 byl kód vrácen na open source licenci AGPLv3, ale to nemělo vliv na vývoj projektu Valkey. Valkey je vyvíjen na neutrální platformě pod záštitou Linux Nadace, s příspěvky vývojářů ze společností jako Amazon, Google, Oracle, Ericsson a Snap. Kód projektu je napsán v jazyce C a distribuován pod licencí BSD. Podporovaná práce je k dispozici v Linux, macOS, OpenBSD, NetBSD a FreeBSD.

Valkey a Redis poskytují funkce pro ukládání dat ve formátu klíč/hodnota, rozšířené o podporu strukturovaných datových formátů, jako jsou seznamy, haše a množiny, a možnost spouštění na straně serveru. server Obslužné skripty založené na Lua. Databáze je uložena v paměti a synchronizována s verzí na disku nebo se odráží v protokolu změn na disku, což zajišťuje integritu dat v případě havárie. Podporovány jsou transakce, režim publikování/odběru, příkazy pro inkrementaci/dekrementaci, operace se seznamem a množinami (sjednocení, průnik), přejmenování klíčů, replikace master-slave, vícenásobný výběr a třídicí funkce.

V nové verzi:

  • Pro přenos dat mezi uzly v clusteru používáme atomickou migraci slotů. Tato technika nepřenáší data na úrovni jednotlivých klíčů (jeden klíč za druhým), ale atomickým přesunem datových slotů o velikosti 16 384 bajtů. Přenos se provádí pomocí formátu AOF, který umožňuje odesílání jednotlivých prvků kolekce namísto všech dat spojených s klíčem. Tento přístup výrazně zlepšuje výkon, zabraňuje přesměrování a eliminuje zpoždění, ke kterým dochází, když klient přistupuje k přenášenému klíči.
  • Byla přidána možnost definovat samostatné doby platnosti pro různá pole v haších přidružených k jednomu klíči (dříve byly doby platnosti vázány na klíč a aplikovány na všechna pole). Byly přidány nové příkazy pro správu doby platnosti dat: HEXPIRE, HEXPIREAT, HEXPIRETIME, HGETEX, HPERSIST, HPEXPIRE, HPEXPIREAT, HPEXPIRETIME, HPTTL, HSETEX a HTTL.
  • Byla poskytnuta možnost používat číslované databáze v režimu clusteru, ve kterém je klíčový prostor rozdělen do několika různých databází (ve výchozím nastavení 16).
  • Efektivita velkých klastrů se zlepšila – bylo prokázáno, že klastr s 2 000 uzly je schopen zpracovat miliardu požadavků za sekundu.
  • Přidána optimalizace, která umožňuje v některých situacích 40% zvýšení propustnosti preventivním načítáním seskupených (pipelinových) příkazů do paměti.
  • Byla přidána optimalizace, která může v některých situacích zvýšit propustnost až o 20 % tím, že eliminuje nutnost kopírování dat do paměti (nulová kopie) při zpracování velkých dotazů.
  • Přidána podpora technologie Multipath TCP pro současné doručování paketů po více trasách přes různá síťová rozhraní vázaná na různé IP adresy. Použití Multipath TCP může v některých situacích snížit latenci až o 25 %.
  • Funkce BITCOUNT a HyperLogLog byly aktualizovány s optimalizacemi, které využívají instrukce procesoru SIMD, což v některých situacích zvyšuje propustnost až o 200 %.
  • Geoprostorové indexy nyní podporují dotazy na polohu založené na polygonových souřadnicích.
  • Přidán příkaz „DELIFEQ“ pro odstranění klíče, pokud se jeho přidružená hodnota shoduje se zadanou hodnotou.
  • Příkaz „SEZNAM KLIENTŮ“ nyní umožňuje nastavit filtry, které filtrují prvky podle názvu, příznaků, aktivity, databáze, IP adresa a pravomoci.
  • Byla obnovena podpora pro 25 dříve zastaralých příkazů.

Zdroj: opennet.ru

Kupte si spolehlivý hosting pro stránky s DDoS ochranou, VPS VDS servery 🔥 Kupte si spolehlivý webhosting s ochranou DDoS, VPS VDS servery | ProHoster