Download - Redis talk

Transcript
Page 1: Redis talk
Page 2: Redis talk

O que veremos?l CONCEITOS BÁSICOSl ESTRUTURAS DE DADOSl ALGUNS RECURSOS EXTRAS :)

Page 3: Redis talk

Agendal NOSQLl CHAVE VALORl REDISl ESTRUTURAS DE DADOSl TRANSAÇÕESl PIPELININGl LUA SCRIPTINGl PUBLISH/SUBSCRIBE

Page 4: Redis talk

“The rise of NoSQL databases marks the end of the era of relational database dominance”

Martin Fowler

“The era of Polyglot Persistence has begun”

Page 5: Redis talk
Page 6: Redis talk

CHAVE VALOR

Page 7: Redis talk

VALORIZE SUAS CHAVES

Page 8: Redis talk

TÁ, MAS E O REDIS?

Page 9: Redis talk

REMOTE DICTIONARY SERVERl SALVATORE SANFILIPPOl OPEN SOURCE (BSD)l ESCRITO EM Cl SINGLE THREADED

Page 10: Redis talk

O QUE VOCÊ PRECISA SABERl STORAGE DE DADOS EM MEMÓRIAl EXTREMAMENTE RÁPIDOl SUPORTE TRANSACIONALl API SIMPLES E RICA

Page 11: Redis talk

STRINGSl ATÉ 512MBl CACHE DE DADOSl TEXTO, JSON, DADOS BINÁRIOS...

COMANDOSl APPENDl DELl GET / MGETl GETRANGEl SET / MSETl INCRl INCRBYl INCRBYFLOATl STRLEN

Page 12: Redis talk

HASHESl ATÉ 4 BILHÕES DE CHAVESl ARMAZENAMENTO DE OBJETOSl ARMAZENAMENTO DE INFORMAÇÕESl RELACIONADAS

COMANDOSl HSET/HMSETl HGET/HMGETl HGETALLl HDELl HEXISTSl HINCRBYl HINCRBYFLOAT

CHAVECHAVE: VALORCHAVE: VALORCHAVE: VALOR

USER:1NOME: EDSON LIMAAPELIDO: DDDIDADE: 25 ANOS

Page 13: Redis talk

LISTSl FILASl PILHASl ...

COMANDOSl LPUSHl RPUSHl LLENl LRANGEl LTRIMl LINDEXl LPOPl RPOP

Page 14: Redis talk

SETSl LISTA SEM REPETIÇÃOl PERMITEM REALIZAR OPERAÇÕESl COMPLEXAS COMO INTERSECÇÃO,l DIFERENÇA, ETC...

COMANDOSl SADDl SCARDl SDIFFl SDIFFSTOREl SINTERl SINTERSTOREl SMEMBERSl SISMEMBERl SREM

Page 15: Redis talk

SORTED SETSLISTA SEM REPETIÇÃO COM l RANKINGl PÁGINAS MAIS ACESSADAS

COMANDOSl ZADDl ZCARDl ZDIFFl ZDIFFSTOREl ZINTERl ZINTERSTOREl ZMEMBERSl ZISMEMBERl ZREM

Page 16: Redis talk

BITMAPl MAPA DE BITS (SÉRIO ???)

COMANDOSl SETBITl GETBITl BITCOUNTl BITOP

Page 17: Redis talk

TRANSAÇÕESl SIM, TRANSAÇÕES \O/

COMANDOSl MULTIl DISCARDl EXEC

Page 18: Redis talk

PIPELINGEXECUTE DIVERSAS OPERAÇÕES EM l UMA REQUEST

Page 19: Redis talk

LUA SCRIPTINGl LEVE E PODEROSA

Page 20: Redis talk

PUB/SUBl MULTIPLOS CANAISl MUITO RÁPIDO

Page 21: Redis talk