Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Redis
Search
Akshay Rawat
April 16, 2013
Programming
2
250
Redis
A Quick Intro
Akshay Rawat
April 16, 2013
Tweet
Share
Other Decks in Programming
See All in Programming
Realtime API 入門
riofujimon
0
150
Figma Dev Modeで変わる!Flutterの開発体験
watanave
0
110
弊社の「意識チョット低いアーキテクチャ」10選
texmeijin
5
24k
CSC509 Lecture 11
javiergs
PRO
0
180
ECS Service Connectのこれまでのアップデートと今後のRoadmapを見てみる
tkikuc
2
250
ヤプリ新卒SREの オンボーディング
masaki12
0
130
3 Effective Rules for Using Signals in Angular
manfredsteyer
PRO
0
100
Less waste, more joy, and a lot more green: How Quarkus makes Java better
hollycummins
0
100
CSC509 Lecture 09
javiergs
PRO
0
140
ふかぼれ!CSSセレクターモジュール / Fukabore! CSS Selectors Module
petamoriken
0
150
광고 소재 심사 과정에 AI를 도입하여 광고 서비스 생산성 향상시키기
kakao
PRO
0
170
エンジニアとして関わる要件と仕様(公開用)
murabayashi
0
290
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Being A Developer After 40
akosma
86
590k
Unsuck your backbone
ammeep
668
57k
Designing Experiences People Love
moore
138
23k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
28
2k
We Have a Design System, Now What?
morganepeng
50
7.2k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
65k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
Ruby is Unlike a Banana
tanoku
97
11k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Transcript
Redis
DATA STRUCTURES Strings, Lists, Sets, Sorted Sets, Hashes IPC Shared
Memory, MQs, Semaphores, PubSub Caching Expiration, Eviction Policies
Time Complexity O(1) < O(log(n)) < O(n) < O(n^2) ..
Containers String, Doubly Linked Lists, Skip Lists, Hash Tables ... Guaranteed, Mathematically Predictable Specialized C data structures Varies based on storage pattern
LIST Data Structure: Doubly Linked Lists Strengths: Time Complexity O(1)
operations LPUSH LPOP RPUSH RPOP LPUSHX RPUSHX LTRIM Capped collections: Logs, Activity Feeds
LIST Strengths: IPC operations BLPOP BRPOP BRPOPLPUSH Blocking Atomic EM
implementations Light weight APMQ replacement
SET Strengths: Set Operations SINTER SUNION SISMEMBER Is a friend?
Common Friends. All friends of A & B. People who bought this, also bought ... Data filtering - eg. Blog Tags, N Dimension
SORTED SET Strengths: Scores and Ranks ZRANGEBYSCORE ZRANGE ZCOUNT ZRANK
ZREMRANGEBYSCORE ZREMRANGEBYRANK Leader boards - Top something lists. Priority Queues
IPC Named Channels. ActiveSupport Notifications like API Pub Sub SUBSCRIBE
PSUBSCRIBE PUBLISH Simple Semaphores / Distributed Locks String SETNX
In Short Redis is feature rich, but not a swiss
knife ~Time & Memory complexity Single Threaded / Single Core Utilization Memory complexity is a funky blackbox Persistence strategy - a work in progress