Redis

Redis

Information
Skaberen Salvatore Sanfilippo
Udviklet af Redis Labs
Første version 10. maj 2009
Sidste version 6.2.1 (2. marts 2021)
Avanceret version 6.0-rc4 (16. april 2020)
Depositum RedisGitHub
Projektstatus I aktiv udvikling I aktiv udvikling
Skrevet i VS
Operativ system Multiplatform
Miljø Tværplatform
Sprog engelsk
Type Nøgle-værdi database
Distributionspolitik Gratis og open source
Licens BSD
Internet side https://redis.io

Redis (fra REmote DIctionary Server, der kan oversættes som "ekstern ordbogsserver" og ordspil med Redistribute ) er et udvideligt , meget højtydende databasestyringssystem med nøgleværdi skrevet i ANSI C og distribueret under BSD-licensen . Det er en del af NoSQL- bevægelsen og sigter mod at give den højest mulige ydeevne.

Historisk

Lanceret i 2009 af Salvatore Sanfilippo, blev udviklingen af ​​Redis-softwaren finansieret af Pivotal Software  (en) enmaj 2013derefter af Redis Labs ijuni 2015.

I juni 2017, det er blevet den niende mest anvendte DBMS i verden og den første til vigtige databaser .

Hovedtræk

Data håndteres

Redis giver dig mulighed for at håndtere enkle datatyper: strenge , associerende arrays , lister , sæt og ordnede sæt.

For at kommunikere med en Redis-server skal du åbne en TCP- forbindelse . Redis-klienten og serveren bruger derefter protokollen RESP (REdis Serialization Protocol), der tilføjes over TCP- netværkslaget . Denne protokol er meget let at implementere og er baseret på et kommandosystem og tillader serialisering af mange typer data såvel som fejl.

En af de vigtigste egenskaber ved Redis er at opbevare alle data i RAM. Dette gør det muligt at opnå fremragende ydeevne, mens man undgår diskadgang, hvilket er særlig dyrt i denne henseende.

Når datastørrelsen er for stor til at passe i hukommelsen, kan Redis også bruge virtuel hukommelse .

For at sikre bevarelse af data i tilfælde af en hændelse - RAM er ustabil - tilbyder Redis muligheden for at "fange" databasens tilstand i en fil. Da denne teknik ikke holder de ændringer, der er foretaget mellem to optagelser, er det også muligt at gemme dem for at gendanne databasen i tilfælde af en hændelse.

Begivenhed

Redis har en public -subscribe- mekanisme, der gør det muligt at sende begivenheder til de forskellige klienter, der er forbundet med databasen.

Implementering

Redis understøtter replikering gennem en master-slave-model til fejlmodstand og belastningsbalanceringsformål. Al skrivning skal udføres gennem masterinstansen, men det er muligt at læse på slaveforekomsterne - hvis der imidlertid ikke er noget kritisk behov for med tillid til at få adgang til opdaterede data.

Dens standard softwareport er 6379.

Bemærkelsesværdige implementeringer

Noter og referencer

  1. Udgivelse 6.2.1  " ,2. marts 2021(adgang 16. marts 2021 )
  2. "  https://github.com/antirez/redis/releases/tag/6.0-rc4  " ,16. april 2020
  3. http://redis.io/topics/faq
  4. http://antirez.com/news/91
  5. (in) '  DB-Engines Ranking  "DB-Engines (adgang til 5. september 2020 ) .
  6. "  Redis Protocol specifikation - Redis  " , på redis.io (adgang til 28. april 2020 )
  7. https://redis.io/topics/quickstart
  8. (in) "  Crowdsourced papiranalyse og MP-udgifter  "simonwillison.net (adgang til 5. september 2020 ) .
  9. (i) Tom Preston-Werner , "  How We Made GitHub Fast  "github.com ,20. oktober 2009(adgang til 5. september 2020 ) .
  10. “  Bruger Stack Exchange cache, og i bekræftende fald, hvordan?  " , On Meta Stack Exchange (adgang til 5. september 2020 ) .
  11. https://insidestories.salesforce.com/concierge

Se også

Relaterede artikler

eksterne links