Redis case study

NoSQL Concepts

Miriam Antona

Software engineer

Redis - overview

  • Remote Dictionary Server
  • Popular key-value database
  • Fast in-memory data structure store
    • In-memory dataset
    • Also allows to persist data to disk
  • Used as:
    • Database
    • Cache
    • Message broker

Redis logo

  • Open source
  • Redis Labs: 400+ employees
NoSQL Concepts

Redis - data structures

  • Strings
      SET name Ann
    
  • Lists
      RPUSH my_numbers 1 2 3
    
  • Sets
      SADD my_set 1 2 3
    
  • Hashes
      HMSET user:123 name Ann surname Smith
    
  • ...
NoSQL Concepts

Redis - data structures

  • Strings
      SET name Ann
    
  • Lists
      RPUSH my_numbers 1 2 3
    
  • Sets
      SADD my_set 1 2 3
    
  • Hashes
      HMSET user:123 name Ann surname Smith
    
  • ...
1 https://www.redis.io/commands
NoSQL Concepts

Redis - features

  • Atomic operations
  • Transactions
  • Lua scripting for complex operations
  • Programming languages: Python, R, C#, Java, JavaScript, PHP...
  • Asynchronous replication
NoSQL Concepts

Redis - popular uses

  • Caching (query results, images, files...)
  • Session storage (user profiles, credentials...)
  • Chatting, messaging, and queues (chat rooms, real-time comments, social media feeds...)
  • Real-time analytics (social media analytics, advertisement)
  • Gaming leaderboards (ranked lists in real-time)
  • etc.
NoSQL Concepts

Redis - on the cloud

  • Amazon Web Services Elasticache for Redis
  • Microsoft Azure Cache for Redis in Azure
  • Alibaba ApsaraDB for Redis in Alibaba Cloud
NoSQL Concepts

Redis - customers

Logos of some Redis customers

NoSQL Concepts

Editoo case study

Editoo logo

  • Small business
  • Online tool to create custom magazines
    • personal
    • business

Problem:

  • High latency due to more people using the application
  • Their RDBMS couldn't handle that increase

 

Solution: Use Redis

  • Store user sessions
  • Caching database queries
NoSQL Concepts

Editoo case study

Results:

  • Reduction in downtime
  • Higher performance
  • Future migrations from its relational databases into Redis
NoSQL Concepts

Editoo case study

Results:

  • Reduction in downtime
  • Higher performance
  • Future migrations from its relational databases into Redis
1 https://redislabs.com/case-studies/
NoSQL Concepts

Let's practice!

NoSQL Concepts

Preparing Video For Download...