Byl zveřejněn Valkey 9.0, fork databázového systému Redis

Byl vydán databázový systém Valkey 9.0, který se loni odštěpil od databázového systému Redis. Fork byl vytvořen po převodu Redis 7.4 na proprietární licenci. Vydání Redis 8.0 se kód vrátil k volné licenci AGPLv3, ale to nemělo vliv na vývoj projektu Valkey. Valkey se vyvíjí na neutrální platformě pod záštitou organizace Linux Foundation za účasti vývojářů z firem jako Amazon, Google, Oracle, Ericsson a Snap. Kód projektu je napsán v jazyce C a šíří se pod licencí BSD. Podporuje provoz v Linuxu, macOS, OpenBSD, NetBSD a FreeBSD.

Databázové systémy Valkey a Redis poskytují funkce pro ukládání dat ve formátu klíč/hodnota, rozšířené podporou strukturovaných formátů dat, jako jsou seznamy, hašované tabulky a množiny, stejně jako možnost vykonávat na straně serveru zpracovatelských skriptů v jazyce Lua. Databáze je uložena v paměti a synchronizována s verzí na disku nebo zaznamenávána v logu změn na disku, což zajišťuje ochranu dat v případě nečekaného ukončení. Podporují se transakce, režim 'publikace/předplatné', příkazy pro inkrementaci/dekrementaci, operace se seznamy a množinami (sjednocení, průnik), přejmenování klíčů, master-slave replikace, vícenásobné výběry a funkce řazení.

V nové verzi:

  • Pro přenos dat mezi uzly v klastru je použita technika atomární migrace slotů, při které jsou data přepravována ne na úrovni jednotlivých klíčů (jeden klíč za druhým), ale na úrovni atomárního přesunu 16384 bajtových slotů pro ukládání dat. Přenos probíhá pomocí formátu AOF, který umožňuje odesílání jednotlivých prvků kolekcí namísto všech dat spojených s klíčem. Tento přístup výrazně zvyšuje výkon, umožňuje se vyhnout přesměrováním a vylučuje zpoždění vzniklé při přístupu klienta k přesouvanému klíči.
  • Byla přidána možnost stanovit různé doby životnosti pro různá pole v hašovaných tabulkách spojených s jedním klíčem (dříve byla doba životnosti spojena s klíčem a zahrnovala všechna pole najednou). Pro správu doby životnosti dat byly přidány nové příkazy: HEXPIRE, HEXPIREAT, HEXPIRETIME, HGETEX, HPERSIST, HPEXPIRE, HPEXPIREAT, HPEXPIRETIME, HPTTL, HSETEX a HTTL.
  • Byla poskytnuta možnost využití v clusterovém režimu číslovaných databází, ve kterých je prostor klíčů rozdělen na několik různých databází (ve výchozím nastavení 16).
  • Zvýšena efektivita fungování velkých clusterů — byl představen cluster o 2000 uzlech, schopný zpracovávat miliardu dotazů za sekundu.
  • Byla přidána optimalizace, která v některých situacích může zvýšit propustnost o 40 % díky předběžnému načítání seskupených (pipelining) příkazů do paměti.
  • Byla přidána optimalizace, která v některých situacích může zvýšit propustnost o 20 % eliminací kopírování dat v paměti (zero copy) během zpracování velkých dotazů.
  • Byla přidána podpora technologie Multipath TCP pro organizaci doručování paketů současně několika trasami přes různé síťové rozhraní připojené k různým IP adresám. Použití Multipath TCP může v některých situacích snížit latenci o 25 %.
  • Do BITCOUNT a HyperLogLog byly přidány optimalizace využívající procesorové instrukce SIMD, které v některých případech umožňují zvýšit propustnost o 200 %.
  • Do geoprostorových indexů byla přidána podpora dotazů na polohu podle souřadnic polygonu.
  • Byl přidán příkaz „DELIFEQ“ pro odstranění klíče, pokud jeho přidružená hodnota odpovídá zadané.
  • V příkazu „CLIENT LIST“ byla implementována možnost zadávání filtrů, které odfiltrují prvky podle názvu, příznaků, aktivity, databáze, IP adresu a oprávnění.
  • Byla obnovena podpora 25 příkazů, které byly dříve vyřazeny.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster