Slide 1

Slide 1 text

An introduction to Redis

Slide 2

Slide 2 text

What is it? Redis is an open source, advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets.

Slide 3

Slide 3 text

What is it? Redis is an open source, advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets. What?

Slide 4

Slide 4 text

What is it? Think memcached: string => string

Slide 5

Slide 5 text

What is it? Think memcached: string => string But on steroids: string => string/int/list/hash/set

Slide 6

Slide 6 text

What is it? Think memcached: string => string But on steroids: string => string/int/list/hash/set All the operations you’d expect for those types

Slide 7

Slide 7 text

What is it? Think memcached: string => string But on steroids: string => string/int/list/hash/set All the operations you’d expect for those types Plus other weird stuff: sorted sets, pub-sub

Slide 8

Slide 8 text

In memory (ram), very fast (100’s K ops/sec) Storage

Slide 9

Slide 9 text

In memory (ram), very fast (100’s K ops/sec) RDB (binary dump, default), every X sec/op Storage

Slide 10

Slide 10 text

In memory (ram), very fast (100’s K ops/sec) RDB (binary dump, default), every X sec/op AOF (append log), safe but slow Storage

Slide 11

Slide 11 text

Atomic (one event loop) Behaviour

Slide 12

Slide 12 text

Atomic (one event loop) Supports transactions (think batches) Behaviour

Slide 13

Slide 13 text

Atomic (one event loop) Supports transactions (think batches) Most operations O(1) Behaviour

Slide 14

Slide 14 text

Atomic (one event loop) Supports transactions (think batches) Most operations O(1) Extensible with Lua (custom atomic ops) Behaviour

Slide 15

Slide 15 text

Demo time

Slide 16

Slide 16 text

http://redis.io http://blog.jupo.org/tag/redis Thanks! Questions?