Slide 1

Slide 1 text

York Tsai, http://about.me/yorktsai From LAMP to NoSQL

Slide 2

Slide 2 text

What is Redis?

Slide 3

Slide 3 text

REmote DIctionary Server Redistribute

Slide 4

Slide 4 text

Memcache with rich data structure

Slide 5

Slide 5 text

Why Redis?

Slide 6

Slide 6 text

Our Database

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

Performance

Slide 10

Slide 10 text

http://www.ruturaj.net/redis-memcached-tokyo-tyrant-mysql- comparison

Slide 11

Slide 11 text

http://antirez.com/post/redis-memcached-benchmark.html

Slide 12

Slide 12 text

Rich Data Structure

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

Well-Documented with Time-Complexity!!

Slide 15

Slide 15 text

Zero-Configuration > Make

Slide 16

Slide 16 text

Examples

Slide 17

Slide 17 text

Cache a value

Slide 18

Slide 18 text

Cache a value, DEL/EXPIRE a set redis > EXPIRE myhash 3600 (integer) 1 redis > DEL myhash (integer) 1

Slide 19

Slide 19 text

List / Queue / Stack

Slide 20

Slide 20 text

Sets

Slide 21

Slide 21 text

Sorted Sets

Slide 22

Slide 22 text

Real-World Examples

Slide 23

Slide 23 text

Cache Statistics https://gist.github.com/1272511

Slide 24

Slide 24 text

Cache X Recent Records https://gist.github.com/1272508

Slide 25

Slide 25 text

When not to Use Redis?

Slide 26

Slide 26 text

If your data cannot fit into memory. (MMap is no longer supported after 2.6)

Slide 27

Slide 27 text

Frequently Asked Questions

Slide 28

Slide 28 text

Multi-core? Open multiple instances

Slide 29

Slide 29 text

Persistence? Append-only Files (Or Snapshot)

Slide 30

Slide 30 text

Replication? Master-Slave

Slide 31

Slide 31 text

Transaction? MULTI / EXEC + WATCH

Slide 32

Slide 32 text

Not in this talk ● Pub/Sub (publish / subscribe) ● Redis Cluster (Incoming)

Slide 33

Slide 33 text

Thank You!