Redis - Marcelo Tozzi - Lomadee

Post on 13-May-2015

235 views 1 download

Transcript of Redis - Marcelo Tozzi - Lomadee

http://redis.io

domingo, 11 de dezembro de 2011

Jim Gray

“MEMORY IS THE NEW DISK. DISK IS THE NEW

TAPE.”

domingo, 11 de dezembro de 2011

VAMOS FALAR DE REDIS

Mas primeiro...

domingo, 11 de dezembro de 2011

NOSQL Mudança de paradigma

SQL?

Cada “problema” uma solução mais adequada de persistência.

domingo, 11 de dezembro de 2011

domingo, 11 de dezembro de 2011

domingo, 11 de dezembro de 2011

QUANDO USAR?

Cache

Stock prices

Sharding Directory Service

Real time data collection

Real time communication

Analytics

domingo, 11 de dezembro de 2011

REDIS, QUE DIABOS É ISSO?

domingo, 11 de dezembro de 2011

CHAVE-VALOREstrutura de dados

domingo, 11 de dezembro de 2011

CHAVE VALORVALORVALORVALORVALOR

user:1 name Ayrton ageage 23

user:2 name João phonephone 555-555

user:1:friends user:2 user:3 user:4user:4 user:5

user:3 name José emailemail xp@a.com

user:4 name Mario ageage 34

user:5 name Mara ageage 25

user:1:acess 140

user:1:token H13NDSME3MDSSR6MG6H13NDSME3MDSSR6MG6H13NDSME3MDSSR6MG6

domingo, 11 de dezembro de 2011

CLIENTS PARA REDIS:ActionScriptCC#C++ClojureCommon LispErlangFancyGoHaskellhaXeIo

JavaLuaNode.jsObjective-CPerlPHPPure DataPythonRubyScalaSmaltalkTcl

domingo, 11 de dezembro de 2011

KEYS

Você pesquisa pela chave.

Todas as chaves ficam na memória.

O(1)

Chaves longas, má idéia.

Chaves curtas, má idéia também.

Tente seguir um padrão.

domingo, 11 de dezembro de 2011

No terminal...

Inicie o server:

Inicie o client:

Insira um registro:

domingo, 11 de dezembro de 2011

REDIS DATA TYPES

String

Lists

Hashes

Sets

Sorted Sets

domingo, 11 de dezembro de 2011

STRINGS

domingo, 11 de dezembro de 2011

APPEND key value

DECR key

DECRBY key decrement

GET key

GETBIT key offset

GETRANGE key start end

GETSET key value

INCR key

INCRBY key increment

MGET key [key ...]

MSET key value [key value ...]

MSETNX key value [key value ...]

SET key value

SETBIT key offset value

SETEX key seconds value

SETNX key value

SETRANGE key offset value

STRLEN key

domingo, 11 de dezembro de 2011

LISTS

domingo, 11 de dezembro de 2011

HASHES

domingo, 11 de dezembro de 2011

SETS

domingo, 11 de dezembro de 2011

SORTED SETS

domingo, 11 de dezembro de 2011

ZADD key score member [score] [member]ZCARD keyZCOUNT key min maxZINCRBY key increment memberZINTERSTORE destination numkeys key [key ...][WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX]ZRANGE key start stop [WITHSCORES]ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]ZRANK key memberZREM key member [member ...]ZREMRANGEBYRANK key start stopZREMRANGEBYSCORE key min maxZREVRANGE key start stop [WITHSCORES]ZREVRANGEBYSCORE key max min [WITHSCORES] [LIMIT offset count]ZREVRANK key memberZSCORE key memberZUNIONSTORE destination numkeys key [key ...][WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX]

domingo, 11 de dezembro de 2011

SNAPSHOTTINGredis.conf:

save 900 1

save 300 10

save 60 10000

dbfilename dump.rdb

dir ./

Nome do arquivo:

Diretório do dump:

domingo, 11 de dezembro de 2011

REPLICATION

slaveof <masterip> <masterport>

redis.conf:

masterauth <master-password>

SLAVE

SLAVE

requirepass <pass>MASTER

domingo, 11 de dezembro de 2011

CODE...

domingo, 11 de dezembro de 2011