Studiu de caz Redis

Concepte NoSQL

Miriam Antona

Software engineer

Redis - prezentare generală

  • Remote Dictionary Server
  • Bază de date populară de tip cheie-valoare
  • Stocare rapidă în memorie
    • Set de date în memorie
    • Permite și persistența datelor pe disc
  • Utilizat ca:
    • Bază de date
    • Cache
    • Broker de mesaje

Logo Redis

  • Open source
  • Redis Labs: 400+ angajați
Concepte NoSQL

Redis - structuri de date

  • Șiruri de caractere
      SET name Ann
    
  • Liste
      RPUSH my_numbers 1 2 3
    
  • Mulțimi
      SADD my_set 1 2 3
    
  • Hash-uri
      HMSET user:123 name Ann surname Smith
    
  • ...
Concepte NoSQL

Redis - structuri de date

  • Șiruri de caractere
      SET name Ann
    
  • Liste
      RPUSH my_numbers 1 2 3
    
  • Mulțimi
      SADD my_set 1 2 3
    
  • Hash-uri
      HMSET user:123 name Ann surname Smith
    
  • ...
1 https://redis.io/glossary/redis-data-structures/
Concepte NoSQL

Redis - funcționalități

  • Operații atomice
  • Tranzacții
  • Scripting Lua pentru operații complexe
  • Limbaje de programare: Python, R, C#, Java, JavaScript, PHP...
  • Replicare asincronă
Concepte NoSQL

Redis - utilizări populare

  • Caching (rezultate interogări, imagini, fișiere...)
  • Stocare sesiuni (profiluri utilizatori, credențiale...)
  • Chat, mesagerie și cozi (camere de chat, comentarii în timp real, fluxuri social media...)
  • Analiză în timp real (social media, publicitate)
  • Clasamente în jocuri (liste cu punctaje în timp real)
  • etc.
Concepte NoSQL

Redis - în cloud

  • Amazon Web Services Elasticache for Redis
  • Microsoft Azure Cache for Redis în Azure
  • Alibaba ApsaraDB for Redis în Alibaba Cloud
Concepte NoSQL

Redis - clienți

Logo-uri ale unor clienți Redis

Concepte NoSQL

Studiu de caz Editoo

Logo Editoo

  • Companie mică
  • Instrument online pentru reviste personalizate
    • personale
    • de afaceri

Problemă:

  • Latență ridicată din cauza creșterii numărului de utilizatori
  • RDBMS-ul lor nu putea face față acestei creșteri

 

Soluție: Utilizarea Redis

  • Stocarea sesiunilor utilizatorilor
  • Caching pentru interogările bazei de date
Concepte NoSQL

Studiu de caz Editoo

Rezultate:

  • Reducerea timpilor de nefuncționare
  • Performanță mai bună
  • Migrări viitoare din bazele de date relaționale în Redis
Concepte NoSQL

Studiu de caz Editoo

Rezultate:

  • Reducerea timpilor de nefuncționare
  • Performanță mai bună
  • Migrări viitoare din bazele de date relaționale în Redis
1 https://redis.io/customers/
Concepte NoSQL

Hai să exersăm!

Concepte NoSQL

Preparing Video For Download...