Caso di studio Redis

Concetti NoSQL

Miriam Antona

Software engineer

Redis - panoramica

  • Remote Dictionary Server
  • Diffuso database key-value
  • Archivio dati in memoria veloce
    • Dataset in memoria
    • Consente anche la persistenza su disco
  • Usi principali:
    • Database
    • Cache
    • Message broker

Logo Redis

  • Open source
  • Redis Labs: oltre 400 dipendenti
Concetti NoSQL

Redis - strutture dati

  • Stringhe
      SET name Ann
    
  • Liste
      RPUSH my_numbers 1 2 3
    
  • Set
      SADD my_set 1 2 3
    
  • Hash
      HMSET user:123 name Ann surname Smith
    
  • ...
Concetti NoSQL

Redis - strutture dati

  • Stringhe
      SET name Ann
    
  • Liste
      RPUSH my_numbers 1 2 3
    
  • Set
      SADD my_set 1 2 3
    
  • Hash
      HMSET user:123 name Ann surname Smith
    
  • ...
1 https://redis.io/glossary/redis-data-structures/
Concetti NoSQL

Redis - funzionalità

  • Operazioni atomiche
  • Transazioni
  • Script Lua per operazioni complesse
  • Linguaggi supportati: Python, R, C#, Java, JavaScript, PHP...
  • Replica asincrona
Concetti NoSQL

Redis - usi comuni

  • Caching (risultati di query, immagini, file...)
  • Archiviazione sessioni (profili utente, credenziali...)
  • Chat, messaggistica e code (stanze chat, commenti in tempo reale, feed social...)
  • Analisi in tempo reale (social media analytics, pubblicità)
  • Classifiche di gioco (liste con ranking in tempo reale)
  • ecc.
Concetti NoSQL

Redis - sul cloud

  • Amazon Web Services Elasticache for Redis
  • Microsoft Azure Cache for Redis su Azure
  • Alibaba ApsaraDB for Redis su Alibaba Cloud
Concetti NoSQL

Redis - clienti

Loghi di alcuni clienti Redis

Concetti NoSQL

Caso di studio Editoo

Logo Editoo

  • Piccola impresa
  • Strumento online per creare riviste personalizzate
    • personali
    • aziendali

Problema:

  • Latenza elevata dovuta all'aumento degli utenti
  • Il loro RDBMS non reggeva l'incremento

 

Soluzione: usare Redis

  • Archiviare le sessioni utente
  • Fare caching delle query al database
Concetti NoSQL

Caso di studio Editoo

Risultati:

  • Riduzione dei downtime
  • Prestazioni superiori
  • Future migrazioni dai database relazionali a Redis
Concetti NoSQL

Caso di studio Editoo

Risultati:

  • Riduzione dei downtime
  • Prestazioni superiori
  • Future migrazioni dai database relazionali a Redis
1 https://redis.io/customers/
Concetti NoSQL

Esercitiamoci!

Concetti NoSQL

Preparing Video For Download...