Paglabas ng Redis 7.4 DBMS, inilipat sa mga lisensyang pagmamay-ari

Ang paglabas ng Redis 7.4 DBMS, na kabilang sa klase ng mga sistema ng NoSQL, ay nai-publish. Nagbibigay ang Redis ng mga function para sa pag-iimbak ng data ng susi/halaga, pinahusay ng suporta para sa mga structured na format ng data gaya ng mga listahan, hash, at set, pati na rin ang kakayahang magpatakbo ng mga tagapangasiwa ng script sa gilid ng server sa Lua. Hindi tulad ng mga in-memory storage system tulad ng Memcached, iniimbak ng Redis ang database hindi lamang sa memorya, ngunit sa disk, na ginagarantiyahan ang kaligtasan ng database sa kaganapan ng isang emergency shutdown.

Ang Redis 7.4 ay inihayag bilang ang unang bersyon na ipinamahagi sa ilalim ng mga bagong tuntunin sa paglilisensya - sa halip na ang dating ginamit na lisensya ng BSD, ang code ay magagamit na ngayon sa ilalim ng mga lisensyang pagmamay-ari na RSALv2 (Redis Source Available License v2) at SSPLv1 (Server Side Public License v1). Ang mga gustong magpatuloy sa paggamit ng code sa ilalim ng lisensya ng BSD ay maaaring gumamit ng mga proyektong Valkey (isang tinidor na binuo kasama ng Amazon, Google, Oracle, Ericsson at Snap), Redict (isang tinidor mula sa may-akda ng pasadyang shell ng Sway at ng Hare wika), Garnet (isang DBMS mula sa Microsoft, tugma sa Redis ) o KeyDB (isang high-performance na tinidor ng Redis 5 mula sa Snapchat).

Ang mga lisensya ng SSPL at RSAL ay may diskriminasyon laban sa ilang partikular na kategorya ng mga user, na hindi nagpapahintulot sa kanila na ituring na bukas o libre. Sa mga tuntunin ng kanilang mga layunin, ang parehong mga lisensya ay magkapareho sa isa't isa, at ang mga pagkakaiba ay nagmumula sa katotohanan na ang lisensya ng SSPL ay batay sa copyleft na lisensya na AGPLv3, at ang lisensya ng RSAL ay batay sa pinahihintulutang lisensya ng BSD. Ang lisensya ng RSAL ay nagpapahintulot sa iyo na gamitin, baguhin, ipamahagi at isama ang code sa mga application, maliban kung ang mga application na ito ay komersyal o ginagamit upang magbigay ng mga pinamamahalaang bayad na serbisyo). Ang lisensya ng SSPL ay naglalaman din ng pangangailangan na mag-supply sa ilalim ng parehong lisensya hindi lamang ang application code mismo, kundi pati na rin ang source code ng lahat ng mga bahagi na kasangkot sa pagbibigay ng serbisyo sa cloud.

Sinusuportahan ng Redis DBMS ang mga transaksyon na nagbibigay-daan sa iyong magsagawa ng isang pangkat ng mga utos sa isang hakbang, na ginagarantiyahan ang pagkakapare-pareho at pagkakapare-pareho (ang mga utos mula sa iba pang mga kahilingan ay hindi maaaring makagambala) sa pagpapatupad ng isang naibigay na hanay ng mga utos, at sa kaso ng mga problema, na nagpapahintulot sa iyo na gumulong mga pagbabago sa likod. Ang lahat ng data ay ganap na naka-cache sa RAM. Available ang mga library ng kliyente para sa pinakasikat na mga wika, kabilang ang Perl, Python, PHP, Java, Ruby, at Tcl.

Kabilang sa mga utos sa pamamahala ng datos ang increment/decrement, standard list at set operations (union, intersection), key renaming, multiple selections, at sorting functions. Sinusuportahan ang dalawang storage mode: periodic data synchronization sa disk at pagpapanatili ng change log sa disk. Ginagarantiyahan ng huli ang kumpletong preserbasyon ng lahat ng pagbabago. Posible rin ang master-slave data replication sa maraming instance. mga server, isinasagawa sa non-blocking mode. Mayroon ding publish/subscribe messaging mode, na lumilikha ng channel kung saan ipinamamahagi ang mga mensahe sa mga kliyente sa pamamagitan ng subscription.

Mga pangunahing pagbabago sa functionality sa Redis 7.4:

  • Idinagdag ang kakayahang limitahan ang buhay ng mga indibidwal na field sa mga hash, mga istruktura para sa pag-iimbak ng mga pinagsama-samang koleksyon ng mga tala sa format na key-value. Sa kaibahan sa pagtatalaga ng panghabambuhay sa isang susi, ang iminungkahing pagbabago ay nagbibigay-daan sa iyong itakda hindi lamang ang kabuuang haba ng buhay para sa lahat ng nauugnay na mga field, kundi pati na rin ang mga indibidwal na panghabambuhay na halaga para sa mga indibidwal na field, na maaaring magamit, halimbawa, upang matiyak ang isang mas maikli. cycle ng buhay ng mga token sa pagpapatotoo kumpara sa ibang session ng data.
  • Ang mga bagong uri ng data na bfloat16 at float16 ay iminungkahi, na na-optimize para sa paggamit sa mga application ng machine learning at nagbibigay-daan upang bawasan ang pagkonsumo ng memory kumpara sa mga dating available na uri ng float32 at float64. Kapag ginamit sa mga hash, maaaring bawasan ng mga bagong uri ang pagkonsumo ng memory sa mga database ng vector ng 47%, bawasan ang latency ng pagkuha ng data ng 59%, at bawasan ang oras ng paglikha ng index ng 58% kumpara sa uri ng float64.
  • Ang paggamit ng mga pangalawang index ay pinasimple. Kapag humihiling ng impormasyon mula sa mga pangalawang index, hindi ka na makakatakas sa ilang partikular na character, gaya ng “@” at “.”, ngunit gumamit ng mga double quote upang i-frame ang isang bahagi ng data. Ang pag-index ng mga walang laman at nawawalang mga patlang ay makabuluhang napabuti rin - isang bagong INDEXMISSING na keyword at ang ismissing() function ay iminungkahi upang lumikha ng mga index at bumuo ng mga query na isinasaalang-alang ang pagkakaroon ng mga field. Ang mga bagong INTERSECT at DISJOINT operator ay naidagdag upang gawing mas madaling mahanap ang geospatial data. Nagdagdag ng mga opsyon para sa pagsusuri ng index memory consumption.
  • Nagdagdag ng suporta para sa mga filter para sa pag-filter ng mga elemento sa mga idinagdag na set ng data, halimbawa, kapag pana-panahong naglo-load ng data mula sa mga sensor papunta sa database, maaari kang magdagdag ng isang filter upang huwag pansinin ang mga halaga na ang pagkakaiba ng oras mula sa nakaraang halaga ay mas mababa sa isang tiyak na halaga ng threshold. .
  • Itinigil namin ang suporta para sa mga trigger at function ng JavaScript na ipinakilala sa huling release.

Pinagmulan: opennet.ru

Bumili ng maaasahang pagho-host para sa mga site na may proteksyon ng DDoS, mga server ng VPS VDS 🔥 Bumili ng maaasahang website hosting na may proteksyon ng DDoS, VPS VDS servers | ProHoster