Redis predstavlja vrlo moćno open source NoSQL rešenje. Prezentacija će vas upoznati s osnovama Redisa sa akcentom na strukture podataka koje podržava. Prikazane su biblioteke za rad sa Redisom iz PHP-a.
KRATKA ISTORIJA PROJEKTA REDIS Projekat započeo Salvatore Sanfilipo - 2009. godine Napisan u jeziku ANSI C Radi na većini POSIX sistema (Linux, OS X, Solaris...) Open source - - 98 kontributora Od 2010. godine sponzoriše ga VMWare Projektu se priključio @antirez https://github.com/antirez/redis Pieter Noordhuis
ŠTA JE REDIS REmote DIctionary Server Napredna key value baza Server struktura podataka - string, set, sorted set, list i hash Podaci se nalaze u memoriji Ekstremno brz - 100K operacija u sekundi Nema indeksa i nema šeme Radi sa komandama Atomske operacije Predvidive performanse Radi na 6379 text based tcp protokolu
ŠTA JE REDIS Jednostavna instalacija $ s u d o a p t - g e t i n s t a l l r e d i s - s e r v e r Podesiva postojanost podataka Master-slave replication Particioniranje Lua scripting - stored procedures Redis-CLI i Redis Sentinel Dostupni klijenti za gotovo sve programske jezike
HASHES Predstavljaju niz field->value parova Pandam asocijativnim nizovima u PHP-u Zauzimaju malo prostora Do 2 32 -1 field->value parova Primer hash-a: user:2 username komita1981 first_name Milan second_name Popović age 32
SETS Predstavlja neuređenu strukturu jedinstvenih elemenata Pandam numeričkim nizovima u PHP-u Do 232-1 elemenata Primer seta: even_numbers {2, 4, 6, 8, 10...} group_members {'John', 'Mike', 'Bob', 'Alice'...}
LISTS Predstavlja niz stringova Elementi se ubacuju na početak ili kraj (glavu i rep) Do 232-1 elemenata Primer liste: last_registered_users: [memre, remem, streamer, poper...] last_logins: [memre, remem, memre, streamer, poper, remem...]