Lëshimi i SGBD Redis 7.0

Lëshimi i SGBD Redis 7.0, i përshtatur për sistemet NoSQL. Redis ofron funksione për ruajtjen e të dhënave në formatin çelës/vlerë, duke zgjeruar mbështetje për formate të dhënash të strukturuara, si lista, hash-e dhe grupe, si dhe mundësinë e ekzekutimit të skripte të përpunimit në anën e serverit në gjuhën Lua. Kodi i projektit ofrohet nën licencën BSD. Modulet shtesë që ofrojnë mundësi të zgjeruara për përdoruesit e korporatave, si RediSearch, RedisGraph, RedisJSON, RedisML, RedisBloom, që nga viti 2019 ofrohen nën licencën pronësore RSAL. Përpjekja për zhvillimin e varianteve të hapura të këtyre moduleve nën licencën AGPLv3 u përpoq të vazhdojë projekti GoodFORM, i cili kohët e fundit është në stagnim.

Ndryshe nga sistemet e ruajtjes në memorie, si Memcached, Redis ofron ruajtje të përhershme të të dhënave në disk dhe garanton ruajtjen e bazës së të dhënave në rast të mbylljes emergjente. Kodet burimore të projektit shpërndahen nën licencën BSD. Bibliotekat për klientët janë të disponueshme për shumicën e gjuhëve më të njohura, duke përfshirë Perl, Python, PHP, Java, Ruby dhe Tcl. Redis mbështet transaksione, të cilat lejojnë ekzekutimin e një grupi komandash në një hap, duke garantuar konsistencën dhe renditjen (komandat nga kërkesa të tjera nuk mund të ndërhyjnë) në ekzekutimin e një seti të caktuar komandash, dhe në rast problemeve, duke lejuar rikthimin e ndryshimeve. Të gjithë të dhënat ruhen plotësisht në memorie.

PĂ«r menaxhimin e tĂ« dhĂ«nave ofrohen komandat si inkrement/dekrement, operacione standarde mbi lista dhe grupe (bashkimi, ndĂ«rprerja), rinovimi i çelĂ«save, seleksione tĂ« shumta dhe funksione renditjeje. MbĂ«shteten dy modo ruajtjeje: sinkronizimi periodic i tĂ« dhĂ«nave nĂ« disk dhe mbajtja e njĂ« logu tĂ« ndryshimeve nĂ« disk. NĂ« rastin e dytĂ« garanton ruajtjen e plotĂ« tĂ« tĂ« gjitha ndryshimeve. ËshtĂ« e mundur organizimi i replikimit master-slave tĂ« tĂ« dhĂ«nave nĂ« disa servera, i realizuar nĂ« njĂ« mĂ«nyrĂ« jo bllokuese. Gjithashtu Ă«shtĂ« nĂ« dispozicion modaliteti i shkĂ«mbimit tĂ« mesazheve "publikim/abonim", ku krijohet njĂ« kanal, mesazhet prej tĂ« cilit shpĂ«rndahen te klientĂ«t sipas abonimit.

Ndryshimet kryesore në Redis 7.0:

  • ËshtĂ« shtuar mbĂ«shtetje pĂ«r funksione qĂ« ekzekutohen nĂ« anĂ«n server. Ndryshe nga skenaret e mbĂ«shtetur mĂ« parĂ« nĂ« gjuhĂ«n Lua, funksionet nuk lidhen me aplikacionin dhe janĂ« tĂ« pĂ«rqendruara nĂ« realizimin e logjikĂ«s shtesĂ«, duke zgjeruar mundĂ«sitĂ« e serverit. Funksionet pĂ«rpunohen njĂ«kohĂ«sisht me tĂ« dhĂ«nat dhe nĂ« lidhje me DB-nĂ«, jo me aplikacionin, pĂ«rfshirĂ« replikimin e tyre dhe ruajtjen nĂ« ruajtjen e pĂ«rhershme.
  • Edyra e dytĂ« e ACL Ă«shtĂ« ofruar, duke lejuar menaxhimin e qasjes nĂ« tĂ« dhĂ«na nĂ« baza çelesh dhe duke mundĂ«suar pĂ«rcaktimin e grupeve tĂ« ndryshme rregullash tĂ« qasjes pĂ«r komandat me mundĂ«sinĂ« e bashkimit tĂ« disa selektorĂ«ve (grupeve tĂ« autorizimit) me çdo pĂ«rdorues. Çdo çelĂ«s mund tĂ« identifikohet me njĂ« sĂ«rĂ« tĂ« caktuar autorizimesh, pĂ«r shembull, Ă«shtĂ« e mundur tĂ« kufizohet qasja vetĂ«m nĂ« lexim apo shkrim tĂ« njĂ« nĂ«ngrupi tĂ« caktuar çelesh.
  • ËshtĂ« ofruar njĂ« implementim i funksionueshĂ«m nĂ« klaster me seksione (sharded), i paradigmes sĂ« shpĂ«rndarjes sĂ« mesazheve nĂ«pĂ«rmjet abonimit (Publish-Subscribe), ku mesazhi dĂ«rgohet nĂ« njĂ« nyje tĂ« caktuar, pĂ«r tĂ« cilĂ«n Ă«shtĂ« e lidhur kanali i mesazheve, dhe mĂ« pas ky mesazh ri-dĂ«rgohet nĂ« nyjet e tjera qĂ« pĂ«rfshihen nĂ« seksion (shard). KlientĂ«t mund tĂ« marrin mesazhe nĂ«pĂ«rmjet abonimit nĂ« kanal, duke u lidhur ose me nyjĂ«n kryesore, ose me nyjet ndihmĂ«se tĂ« seksionit. Menaxhimi bĂ«het me komandat SSUBSCRIBE, SUNSUBSCRIBE dhe SPUBLISH.
  • ËshtĂ« shtuar mbĂ«shtetje pĂ«r pĂ«rpunimin e nĂ«nkomandave nĂ« shumicĂ«n e konteksteve.
  • JanĂ« shtuar komandat e reja:
    • ZMPOP, BZMPOP.
    • LMPOP, BLMPOP.
    • SINTERCARD, ZINTERCARD.
    • SPUBLISH, SSUBSCRIBE, SUNSUBSCRIBE, PUBSUB SHARDCHANNELS/SHARDNUMSUB.
    • EXPIRETIME, PEXPIRETIME.
    • EVAL_RO, EVALSHA_RO, SORT_RO.
    • FUNCTION *, FCALL, FCALL_RO.
    • COMMAND DOCS, COMMAND LIST.
    • LATENCY HISTOGRAM.
    • CLUSTER SHARDS, CLUSTER LINKS, CLUSTER DELSLOTSRANGE, CLUSTER ADDSLOTSRANGE.
    • CLIENT NO-EVICT.
    • ACL DRYRUN.
  • Tani u jep mundĂ«sinĂ« pĂ«r tĂ« pĂ«rpunuar disa konfiguracione nĂ« njĂ« thirrje CONFIG SET/GET.
  • Opsionet «—json», «-2», «—scan», «—functions-rdb» janĂ« shtuar nĂ« utilitarin redis-cli.
  • Shkalla e qasjes nĂ« parametra dhe komandat qĂ« ndikojnĂ« nĂ« siguri Ă«shtĂ« çaktivizuar pĂ«r klientĂ«t (p.sh., komandat DEBUG dhe MODULE janĂ« çaktivizuar, ndalohet ndryshimi i konfiguracioneve me flagun PROTECTED_CONFIG). NĂ« redis-cli Ă«shtĂ« ndaluar shkrimi nĂ« skedarin e historisĂ« sĂ« komandave qĂ« pĂ«rmbajnĂ« tĂ« dhĂ«na konfidenciale.
  • JanĂ« bĂ«rĂ« optimizime tĂ« shumta pĂ«r tĂ« pĂ«rmirĂ«suar performancĂ«n dhe pĂ«r tĂ« reduktuar konsumimin e memories. PĂ«r shembull, Ă«shtĂ« ulur ndjeshĂ«m konsumi i memories nĂ« modin klaster, gjatĂ« operacioneve copy-on-write dhe nĂ« punĂ«n me heshat dhe çelĂ«sat e zset. Logjika e shkrimit tĂ« tĂ« dhĂ«nave nĂ« disk (thirrja fsync) Ă«shtĂ« pĂ«rmirĂ«suar. Numri i paketave rrjet dhe thirrjeve sistematike gjatĂ« dĂ«rgimit tĂ« pĂ«rgjigjeve pĂ«r klientin Ă«shtĂ« reduktuar. Efiçenca e replikimit Ă«shtĂ« rritur.
  • Rregulluar problemi i sigurisĂ« CVE-2022-24735 nĂ« ambientin e ekzekutimit tĂ« skripteve Lua, qĂ« lejon zĂ«vendĂ«simin e kodit tuaj Lua dhe arritjen e ekzekutimit tĂ« tij nĂ« kontekstin e njĂ« pĂ«rdoruesi tjetĂ«r, pĂ«rfshirĂ« ato me privilegje mĂ« tĂ« larta.
  • Rregulluar problemi i sigurisĂ« CVE-2022-24736, qĂ« lejon ndalimin e papritur tĂ« procesit redis-server pĂ«r shkak tĂ« dereferencimit tĂ« njĂ« treguesi tĂ« null. Sulmi realizohet pĂ«rmes ngarkimit tĂ« skripteve Lua tĂ« formatuara posaçërisht.

Burimi: opennet.ru

Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster