Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Introducing Redis by Jorge Ferreiro - May 2017

360 views

Published on

A brief introduction with a use case of Redis, a key-value NoSQL database created by Salvatore Sanfilippo in 2009.

Place: UCM FDI Faculty.
Date: 29 May 2017.

Jorge Ferreiro is a passionate 22-yo software engineer who loves to solve big and challenging problems using software.
+info: https://ferreiro.me/about

Published in: Software
  • Be the first to comment

Introducing Redis by Jorge Ferreiro - May 2017

  1. 1. Introducing
 Redis Jorge Ferreiro Ferreiro.me
  2. 2. Jorge Ferreiro @jgferreiro | Introducing Redis 👋Jorge Ferreiro Ferreiro.me/about
  3. 3. Jorge Ferreiro @jgferreiro | Introducing Redis Before starting…
  4. 4. Jorge Ferreiro @jgferreiro | Introducing Redis Who knows Redis? Hands up! ☝
  5. 5. Jorge Ferreiro @jgferreiro | Introducing Redis
  6. 6. Jorge Ferreiro @jgferreiro | Introducing Redis Topics for today! • The 4 questions: • What, Where, Who, When! • Main features • Use case: Dailyfocus
  7. 7. The four
 Questions
  8. 8. Jorge Ferreiro @jgferreiro | Introducing Redis What is Redis? Redis is the most popular(1) key-value NoSQL database Created in 2009 by Salvatore Sanfilippo. [1] 22 May 2017 - https://db-engines.com/en/ranking/key-value+store
  9. 9. Jorge Ferreiro @jgferreiro | Introducing Redis Where Redis? Server side! Backend ✌
  10. 10. Jorge Ferreiro @jgferreiro | Introducing Redis Who is using Redis? And probably your future companies :)
  11. 11. Jorge Ferreiro @jgferreiro | Introducing Redis Why Redis? • Session storage • Page Cache • Queues • Real time analytics, chat apps • API throttling (API requests) Credit: redislab More on this: http://objectrocket.com/blog/how-to/top-5-redis-use-cases
  12. 12. Jorge Ferreiro @jgferreiro | Introducing Redis Buddy, no need to worry!
  13. 13. Features
  14. 14. Jorge Ferreiro @jgferreiro | Introducing Redis Main features • Easy to use and lightweight • Open source! (Yay! 👌) • Supports complex data structure on the value field 💃 • Tons of languages supported! (🔥)
 Go, JavaScript (Node.js), Ruby, Java, PhP, Python… • Redis clusters!
  15. 15. Jorge Ferreiro @jgferreiro | Introducing Redis #1 key-value DB [1] db-engines.com ranking key-value+store (May 2017) YAY!
  16. 16. @jgferreiro - Introducing Redis Basic Redis operations Store • SET name Jorge • LPUSH names Jorge Paul Bla Retrieve • GET name => Jorge • LINDEX names 1 => Paul More useful operations • INCR number => 11 • EXPIRE number 120
  17. 17. Jorge Ferreiro @jgferreiro | Introducing Redis Wanna try? Try.redis.io
  18. 18. Brief use case
  19. 19. Jorge Ferreiro @jgferreiro | Introducing Redis Dailyfocus It’s a productivity application that integrates all your services in one place
  20. 20. Jorge Ferreiro @jgferreiro | Introducing Redis Dailyfocus: stack (ML experiments) 😎 Databases
  21. 21. Jorge Ferreiro @jgferreiro | Introducing Redis The Problem 1. Calling APIS are costly and in Dailyfocus we are constantly doing it :) 2. Delays on loading time make users angry 3. High server costs 💰$$$ and workloads increased without caching
  22. 22. Jorge Ferreiro @jgferreiro | Introducing Redis CACHE ME OUTSIDE HOWBOW DAH
  23. 23. Jorge Ferreiro @jgferreiro | Introducing Redis The Solution (I) Caching user Sessions Requests Server parses request and gets sessions from Redis
  24. 24. Jorge Ferreiro @jgferreiro | Introducing Redis The Solution (II) No cached? Update cache Call to MongoDB, external APIS, etc… to reduce latency and waiting time … Caching user Feeds
  25. 25. Jorge Ferreiro @jgferreiro | Introducing Redis Questions?
  26. 26. Jorge Ferreiro @jgferreiro | Introducing Redis Useful resources (1) Redis Vs. Memcached (2) Redis: Zero to Master in 30 minutes - Part 1 (3) Try Redis Online (4) Introduction to Redis Types
  27. 27. Jorge Ferreiro @jgferreiro | Introducing Redis
  28. 28. Jorge Ferreiro @jgferreiro | Introducing Redis Thank you! Jorge@ferreiro.me

×