Заједница Валкеи најавио је објављивање Валкеи 9.1 — нова стабилна верзија високоперформансног складишта података отвореног кода (BSD лиценца) типа кључ-вредност које подржава различите случајеве употребе, као што су кеширање и редови чекања порука, а може да служи и као примарна база података. Пројекат је подржан од стране Linux Фондација, што осигурава његову континуирану доступност као отвореног кода.
Пројекат је форк Редиса и креиран је након промене у његовом лиценцирању.
Ово издање укључује нове функције, побољшања у безбедности, праћењу, перформансама и ефикасности алата. Преко 80 људи је допринело издању.
Велике промене
Луа је премештен у посебан модул.
У верзији Valkey 9.1, Lua скриптни механизам је одвојен од главног сервера и премештен у посебан модул. Ово одвајање смањује површину напада Valkey језгра и омогућава администраторима да потпуно онемогуће Lua ако се скрипте не користе. Да би се лакше разумело који скриптни механизми су учитани у систему, команда INFO сада има нови одељак за одговор: Scripting Engines (Скриптни механизми).Нове безбедносне исправке.
Стабилно издање 9.1.0 укључује исправке за три рањивости: прекид употребе након пуштања меморије у механизму откључавања клијента, неважећи приступ меморији у команди 7RESTORE и прекид употребе након пуштања меморије током пуне синхронизације током извршавања Луа/функцијског кода са приносом извршавања. Ове рањивости су наведене у напоменама као CVE-2026-23479, CVE-2026-25243 и CVE-2026-23631.ACL на нивоу базе података.
Додат је систем контроле приступа на нивоу базе података. Ово омогућава прецизније дозволе у конфигурацијама са више корисника и иде даље од глобалних правила приступа за целу Valkey инстанцу.Аутоматско поновно учитавање TLS сертификата.
Валкеј 9.1 сада подржава аутоматско поновно учитавање TLS сертификата. За администраторе, ово значи мање ручних корака приликом ротације сертификата и практичније руковање безбедним инсталацијама.Нови HGETDEL тим.
Команда атомски преузима и брише једно или више поља из хеш структуре. Ово је посебно корисно за сценарије попут редова чекања или једнократне потрошње података, где је раније било потребно комбиновати HGET и HDEL путем трансакције.Нови MSETEX тим.
MSETEX вам омогућава да подесите више кључева са дељеним животним веком помоћу једне команде. Раније је овај сценарио захтевао више SETEX позива или комбинацију SET и EXPIRE позива путем цевовода. Нова команда смањује број позива и поједностављује типичан код за сесије и привремене податке.Нови CLUSTERSCAN тим.
Кластери сада имају једну команду за скенирање кључева на свим чворовима. Раније су клијенти морали ручно да покрећу SCAN на сваком чвору и споје резултате. CLUSTERSCAN поједностављује клијентске библиотеке, администраторске алате и оперативне задатке као што је претраживање кључева по обрасцу или типу у целом кластеру.Оптимизација потрошње меморије стрингова.
Показано је да оптимизације интерних показивача за стрингове краће од 128 бајтова смањују потрошњу меморије и до 20%. Ово је посебно важно за типична радна оптерећења кеширања која чувају велики број малих вредности.Мање меморије за сортиране скупове.
Оптимизације структура прескочених листа смањују потрошњу меморије за сортиране скупове до 10%. Операције на сортираним скуповима, укључујући упите попут ZRANGEBYSCORE и ZRANGEBYLEX, такође су убрзане.Убрзан рад са поновним преправљањем.
Интерна прерасподела хеш табеле, која се често дешава када се простор кључева повећава, оптимизована је да би се смањила латенција. Белешке о издању такође помињу смањење скокова латенције због постепеног објављивања страница.Побољшани модел нити за унос/излаз.
Кандидат за издање 9.1.0-rc2 је прерадио модел интеракције I/O нити користећи редове без закључавања. Белешке о издању указују на повећање пропусности од 8–17%.Убрзајте GET и SET.
Валки сада користи хардверски такт подразумевано где год је то могуће, смањујући оптерећење системских позива везаних за време. Пројекат тврди да ће постићи укупно повећање перформанси до 3% за GET и SET операције.Брже уклањање великих количина материјала.
Валкеј сада привремено обуставља интерну промену величине хеш табела током операција као што су SREM, ZREM и HDEL како би се избегло непотребно поновно хеширање и убрзало групно брисање елемената.Ефикасније креирање реплика током AOF-а.
Приликом креирања реплике са омогућеним AOF-ом, резултујућа RDB датотека се сада поново користи уместо генерисања новог снимка за почетну основну AOF датотеку. Ово би требало да смањи непотребне трошкове приликом распоређивања реплика.Побољшања за valkey-cli и valkey-benchmark.
Подршка за атомску миграцију слотова је додата у valkey-cli путем параметра --cluster-use-atomic-slot-migration за операције --cluster rebalance и --cluster reshard. Излаз RPS дистрибуције је додат у valkey-benchmark, заједно са параметрима --warmup и --duration, што олакшава тестирање перформанси.
Одвојено заједно са Valkey 9.1 у екосистему повезани пројекти се промовишу: Валкеј Админ за визуелно управљање кластерима, Валкеј претрага 1.2 са претрагом целог текста, нумеричким филтерима, ознакама и векторском претрагом, као и клијентском библиотеком Валкеј ГЛАЈД.
Валкеј 9.1 је значајно ажурирање са становишта перформанси: мање меморије на уобичајеним структурама, мање кашњење током интерних реконструкција, нове команде за кластере и привремене податке и прецизнији безбедносни модел за производне инсталације.
Извор: линук.орг.ру
