SlideShare a Scribd company logo
Introduction to Redis
Redis – Memory is
the new Disk
1. What isRedis
2. Available clients
3. Data types
4. Operations on data types
5. Performance
6. Persistence
7. Sweet spots
8. Design considerations / Bestpractices
9. Adopters
3
Agenda
● Familiarity with NoSQL?
● Memcache?
● Redis?
4
Poll
Key/value store
like
Memcached onsteroids
5
What is Redis
In-memory
NoSQL database
backed bydisk
6
What is Redis
Collection of data structures exposed
over the network
7
What is Redis
NotjustStrings!
Keys can contain
Strings, Hashes, Lists, Sets and
Sorted Sets
8
What is Redis
What is Redis
9
“ Isee redis definitely more as a flexible tool than as a
solution specialized to solve a specific problem.
- SalvatoreSanfilippo
A Brief History of Redis
1
0
• Started in 2009 by SalvatoreSanfillipo
• VMWare hires Salvatore & Pieter Noordhuis
• Financially supported and promoted by VMWare
Redis Characteristics
10
• Issingle-threaded
• Has queryble keynamespace
• Isextremely fast (~100K operations/second)
• Iseasy to install (no dependencies)
• Issimple and flexible
• Stores everything inmemory
• Written in ANSI C and BSD licensed (free, open)
Language Support
12
Ruby, Python, PHP,Erlang,
Tcl, Perl, Lua, Java, Scala,
Clojure, C#, C/C++,
JavaScript/Node.js, Haskell,
IO,Go
Data Types
13
• Strings (Integers)
• Lists
• Hashes
• Sets
• Sorted Sets
Thinking in Redis
14
• Thisis not an RDBMS
• Itsall about the KEYS, and NOT the
values
• There is no querying onvalues
• There are no indexes
• There are no schemas
Operations on Strings/Integers
15
• SETkey value
• GETkey
• MGET/MSET
• INCR/DECR
• INCRBYDECRBY
• APPENDkey value
• SETNXkey value
• GETSETkey value
Installation
16
• $ wget
http://redis.googlecode.com/files/re
dis-2.4.2.tar.gz
• $ tar xzf redis-2.4.2.tar.gz
• $ cd redis-2.4.2
• $make
• $ ./src/redis-server
Atomicity of Commands
17
• All of the built-in commands of Redis are atomic
• Commands can be chained together (pipelined) to
create complex atomic transactions
• Redis is single threaded and therefore, no locking is
necessary
• In other words, commands like INCR won’t tread on
each other’s toes coming from multiple clients
simultaneously!
Key Expiration
18
• When caching, we don’t want things to live forever
• Any item in Redis can be made to expire after or at a
certain time
• EXPIREmy_key60
• EXPIREATmy_key 1293840000
Operations on Lists
19
• LPUSH/RPUSHkey value [value...]
• LPOP/RPOPkey
• LRANGEkey start stop
• LSETkey index value
• LLENkey
• LTRIMkey startstop
• LINSERTkey before|after pivot
value
• BLPOPkey [key ...] timeout
• LREMkey count value
Operations on Sets
20
SINTERkey [key ...]
SUNIONkey [key ...]
SISMEMBER key member
• SADDkey member
• SPOPkey
• SMEMBERSkey
•
•
•
• SCARD key
Operations on Sorted Sets
20
• ZADDkey score member [score]
[member]
• ZCARDkey
• ZCOUNTkey min max
• ZINCRBYkey increment member
• ZRANKkey member
• ZRANGEkey start stop [WITHSCORES]
• ZSCOREkey member
Operations on Hashes
22
HVALSkey
HLENkey
HEXISTSkey field
• HSETkey field value
• HGETkey field
• HKEYSkey
•
•
•
• HDELkey field [field ...]
Operations on Keys
23
EXPIREkey seconds
EXPIREATkey timestamp
EXISTSkey
• TYPEkey
• TTLkey
• KEYSpattern
•
•
•
• DELkey
Redis Administration Commands
24
DBSIZE
• MONITOR
• SAVE/BGSAVE
• INFO
•
•
•
FLUSHALL
CONFIG SETparameter value
Performance
25
We added two million items into a list in 1.28 seconds, with
a networking layer between us and the server
- SalvatoreSanfilippo,Creator
Performance
26
• Almost same for read and write, handles writes
faster than read
• 100 Kops/second
• Performance depends a lot on
Operation complexity
• Hardware
• Persistence configuration
•
•
•
Payload size
Batch size(pipelining)
Redis-benchmark
27
Demo
28
Key Expiry
• Redis CLI
• Getting Help
• Operations on Strings
•
•
•
Operations on Lists,Set
Groovy program operating on Sorted Set and
Hash
• MONITOR / INFO / DBSIZE/TYPE
• Redis benchmark
Data Durability
29
Dump data to disk after certain conditions are met
OR
Manually
AND/OR
Append Only File (AOF)
Advantages of Persistence
30
• On server restart, Redis re-populates its cache from files stored on
disk
• No issue of “cache warm-up”
• Itis possible to back-up and replicate the files/cache
Memory Requirements?
30
• Depends upon the payload size, and the data-type used
• Instagram reports that they stored 300 million key-value pairs in
about 5 GB of memory =>16 MB/million pairs (they also report that
Memcache requires 52 MB for the same million keys)
Sweet Spots / Use-cases
32
Most read / shared articles
Share state betweenprocesses / Session Tokens
Auto-completion
API rate limiting
Activity Feeds
Job Queue (LPUSH & RPOP)
• Cache Server
• Stats collection
• Tag Cloud
•
•
•
•
•
•
• URL Shortener mapping
Case Studies
33
• Video Marketing Platform
• Real-time analytics
• Stats for usage reports toclients
• Content Publishing application
• Tag Cloud
• Top Read Articles
• URL Shortening information
• Social Media Marketingapplication
• Daily, Monthly and overall stats collection
• List of online users
Design Considerations / Best Practices
34
Use consistent key namespace nomenclature
Have human readable keys
• Avoid excessively longkeys
•
•
• Since there is no querying on values, keys should be thought-out
before hand
• Store data based on use-cases. Ad-hoc queries can-be very
expensive
• Multiple databases are useful for segmenting key namespaces,
especially where key queries are needed
Design Considerations / Best Practices
35
• All datamust fit in memory
•
•
Data duplication/redundancy isOK
Persistence strategy should be chosen based on the kind of data
that you are storing and performance trade-off must be understood
• Good for write-heavy, frequently changing and non-relational data
• Polyglot-persistence isa smartchoice
• Start by using Redis to augment, and then replace
Some Adopters
36
Digg
• Stackoverflow
• Craiglist
• Github
•
•
•
Instagram
Blizzard Entertainment
Learning Resources
37
• http://redis.io/commands
•
•
http://try.redis-db.org
Redis CLI
Advanced Features
38
Pub /Sub
Transactions
Using multiple databases
Commands pipelining
Clustering / Sharding
• Master-slave replication
•
•
•
•
•
• LUA scripting
What is Redis
39
• Simple &Easytouse(Key / Value, data-types map toprogramming
Fast(100 Kops / second)
Powerful(data-types, operations on data-types)
Safe(persistence)
Easytouse(various client libraries)
languages)
• Flexible (Supports commonly used data-types
•
•
•
•
• Widely adopted (Digg, Craiglist, Github …)
Discussion
40
Now that you understand Redis and its capabilities, what use-cases do
come to your mind?
What are your concerns around usage of Redis?
Contact us
Our Office
Client
Location
As the Advanced Consulting
Partners of MongoDB we
have delivered some
amazing MongoDB
development projects,
Know more:
Click Here To Know More!
Have more queries on Grails?
Talk to our GRAILS experts
Now!
Talk To Our Experts
Ad

More Related Content

What's hot (20)

redis basics
redis basicsredis basics
redis basics
Manoj Kumar
 
An Introduction to REDIS NoSQL database
An Introduction to REDIS NoSQL databaseAn Introduction to REDIS NoSQL database
An Introduction to REDIS NoSQL database
Ali MasudianPour
 
Redis
RedisRedis
Redis
imalik8088
 
Redis persistence in practice
Redis persistence in practiceRedis persistence in practice
Redis persistence in practice
Eugene Fidelin
 
An Introduction to Redis for Developers.pdf
An Introduction to Redis for Developers.pdfAn Introduction to Redis for Developers.pdf
An Introduction to Redis for Developers.pdf
Stephen Lorello
 
Redis and it's data types
Redis and it's data typesRedis and it's data types
Redis and it's data types
Aniruddha Chakrabarti
 
Sharding Methods for MongoDB
Sharding Methods for MongoDBSharding Methods for MongoDB
Sharding Methods for MongoDB
MongoDB
 
Redis in Practice
Redis in PracticeRedis in Practice
Redis in Practice
Noah Davis
 
Redis database
Redis databaseRedis database
Redis database
Ñáwrás Ñzár
 
Caching solutions with Redis
Caching solutions   with RedisCaching solutions   with Redis
Caching solutions with Redis
George Platon
 
HBaseCon 2013: Apache HBase Table Snapshots
HBaseCon 2013: Apache HBase Table SnapshotsHBaseCon 2013: Apache HBase Table Snapshots
HBaseCon 2013: Apache HBase Table Snapshots
Cloudera, Inc.
 
Automation with ansible
Automation with ansibleAutomation with ansible
Automation with ansible
Khizer Naeem
 
Elastic Stack Introduction
Elastic Stack IntroductionElastic Stack Introduction
Elastic Stack Introduction
Vikram Shinde
 
Redis cluster
Redis clusterRedis cluster
Redis cluster
iammutex
 
Redis Persistence
Redis  PersistenceRedis  Persistence
Redis Persistence
Ismaeel Enjreny
 
Building robust CDC pipeline with Apache Hudi and Debezium
Building robust CDC pipeline with Apache Hudi and DebeziumBuilding robust CDC pipeline with Apache Hudi and Debezium
Building robust CDC pipeline with Apache Hudi and Debezium
Tathastu.ai
 
Redo log improvements MYSQL 8.0
Redo log improvements MYSQL 8.0Redo log improvements MYSQL 8.0
Redo log improvements MYSQL 8.0
Mydbops
 
Cql – cassandra query language
Cql – cassandra query languageCql – cassandra query language
Cql – cassandra query language
Courtney Robinson
 
An Enterprise Architect's View of MongoDB
An Enterprise Architect's View of MongoDBAn Enterprise Architect's View of MongoDB
An Enterprise Architect's View of MongoDB
MongoDB
 
ELK Stack
ELK StackELK Stack
ELK Stack
Eberhard Wolff
 
An Introduction to REDIS NoSQL database
An Introduction to REDIS NoSQL databaseAn Introduction to REDIS NoSQL database
An Introduction to REDIS NoSQL database
Ali MasudianPour
 
Redis persistence in practice
Redis persistence in practiceRedis persistence in practice
Redis persistence in practice
Eugene Fidelin
 
An Introduction to Redis for Developers.pdf
An Introduction to Redis for Developers.pdfAn Introduction to Redis for Developers.pdf
An Introduction to Redis for Developers.pdf
Stephen Lorello
 
Sharding Methods for MongoDB
Sharding Methods for MongoDBSharding Methods for MongoDB
Sharding Methods for MongoDB
MongoDB
 
Redis in Practice
Redis in PracticeRedis in Practice
Redis in Practice
Noah Davis
 
Caching solutions with Redis
Caching solutions   with RedisCaching solutions   with Redis
Caching solutions with Redis
George Platon
 
HBaseCon 2013: Apache HBase Table Snapshots
HBaseCon 2013: Apache HBase Table SnapshotsHBaseCon 2013: Apache HBase Table Snapshots
HBaseCon 2013: Apache HBase Table Snapshots
Cloudera, Inc.
 
Automation with ansible
Automation with ansibleAutomation with ansible
Automation with ansible
Khizer Naeem
 
Elastic Stack Introduction
Elastic Stack IntroductionElastic Stack Introduction
Elastic Stack Introduction
Vikram Shinde
 
Redis cluster
Redis clusterRedis cluster
Redis cluster
iammutex
 
Building robust CDC pipeline with Apache Hudi and Debezium
Building robust CDC pipeline with Apache Hudi and DebeziumBuilding robust CDC pipeline with Apache Hudi and Debezium
Building robust CDC pipeline with Apache Hudi and Debezium
Tathastu.ai
 
Redo log improvements MYSQL 8.0
Redo log improvements MYSQL 8.0Redo log improvements MYSQL 8.0
Redo log improvements MYSQL 8.0
Mydbops
 
Cql – cassandra query language
Cql – cassandra query languageCql – cassandra query language
Cql – cassandra query language
Courtney Robinson
 
An Enterprise Architect's View of MongoDB
An Enterprise Architect's View of MongoDBAn Enterprise Architect's View of MongoDB
An Enterprise Architect's View of MongoDB
MongoDB
 

Viewers also liked (20)

Developing polyglot persistence applications (SpringOne India 2012)
Developing polyglot persistence applications (SpringOne India 2012)Developing polyglot persistence applications (SpringOne India 2012)
Developing polyglot persistence applications (SpringOne India 2012)
Chris Richardson
 
Introduction to Redis Data Structures: Sorted Sets
Introduction to Redis Data Structures: Sorted SetsIntroduction to Redis Data Structures: Sorted Sets
Introduction to Redis Data Structures: Sorted Sets
ScaleGrid.io
 
Introduction to some top Redis use cases
Introduction to some top Redis use casesIntroduction to some top Redis use cases
Introduction to some top Redis use cases
Josiah Carlson
 
Kicking ass with redis
Kicking ass with redisKicking ass with redis
Kicking ass with redis
Dvir Volk
 
Lesson10 preterit
Lesson10 preteritLesson10 preterit
Lesson10 preterit
Lauren
 
The body
The bodyThe body
The body
Lauren
 
Test on tabloids
Test on tabloidsTest on tabloids
Test on tabloids
oreillyandhallingbrown
 
EnerPro | Energieonderzoek
EnerPro | EnergieonderzoekEnerPro | Energieonderzoek
EnerPro | Energieonderzoek
Rick van Manen
 
Destino 2010
Destino 2010   Destino 2010
Destino 2010
ositaneimi
 
Theadless E-Marketing Initiative Presentation
Theadless E-Marketing Initiative PresentationTheadless E-Marketing Initiative Presentation
Theadless E-Marketing Initiative Presentation
latimer86
 
Big Data Expertise
Big Data ExpertiseBig Data Expertise
Big Data Expertise
TO THE NEW | Technology
 
Mobile Learning Africa (UNESCO)
Mobile Learning Africa (UNESCO)Mobile Learning Africa (UNESCO)
Mobile Learning Africa (UNESCO)
Simon Mwendia
 
Nokia N95 Smartphone ad analysis
Nokia N95 Smartphone ad analysisNokia N95 Smartphone ad analysis
Nokia N95 Smartphone ad analysis
latimer86
 
Jeanne Duprua
Jeanne DupruaJeanne Duprua
Jeanne Duprua
Ladue School District
 
Grails and Ajax
Grails and AjaxGrails and Ajax
Grails and Ajax
TO THE NEW | Technology
 
gasdj456djkdi3353452
gasdj456djkdi3353452gasdj456djkdi3353452
gasdj456djkdi3353452
cephas3
 
Open day presentation 2
Open day presentation 2Open day presentation 2
Open day presentation 2
sallyross
 
FUKUYAMA BASE Workshop Vol.10 Theme
FUKUYAMA BASE Workshop Vol.10 ThemeFUKUYAMA BASE Workshop Vol.10 Theme
FUKUYAMA BASE Workshop Vol.10 Theme
noteproject
 
Historiasexualdelhombre
HistoriasexualdelhombreHistoriasexualdelhombre
Historiasexualdelhombre
Rcabellocaja
 
Developing polyglot persistence applications (SpringOne India 2012)
Developing polyglot persistence applications (SpringOne India 2012)Developing polyglot persistence applications (SpringOne India 2012)
Developing polyglot persistence applications (SpringOne India 2012)
Chris Richardson
 
Introduction to Redis Data Structures: Sorted Sets
Introduction to Redis Data Structures: Sorted SetsIntroduction to Redis Data Structures: Sorted Sets
Introduction to Redis Data Structures: Sorted Sets
ScaleGrid.io
 
Introduction to some top Redis use cases
Introduction to some top Redis use casesIntroduction to some top Redis use cases
Introduction to some top Redis use cases
Josiah Carlson
 
Kicking ass with redis
Kicking ass with redisKicking ass with redis
Kicking ass with redis
Dvir Volk
 
Lesson10 preterit
Lesson10 preteritLesson10 preterit
Lesson10 preterit
Lauren
 
The body
The bodyThe body
The body
Lauren
 
EnerPro | Energieonderzoek
EnerPro | EnergieonderzoekEnerPro | Energieonderzoek
EnerPro | Energieonderzoek
Rick van Manen
 
Theadless E-Marketing Initiative Presentation
Theadless E-Marketing Initiative PresentationTheadless E-Marketing Initiative Presentation
Theadless E-Marketing Initiative Presentation
latimer86
 
Mobile Learning Africa (UNESCO)
Mobile Learning Africa (UNESCO)Mobile Learning Africa (UNESCO)
Mobile Learning Africa (UNESCO)
Simon Mwendia
 
Nokia N95 Smartphone ad analysis
Nokia N95 Smartphone ad analysisNokia N95 Smartphone ad analysis
Nokia N95 Smartphone ad analysis
latimer86
 
gasdj456djkdi3353452
gasdj456djkdi3353452gasdj456djkdi3353452
gasdj456djkdi3353452
cephas3
 
Open day presentation 2
Open day presentation 2Open day presentation 2
Open day presentation 2
sallyross
 
FUKUYAMA BASE Workshop Vol.10 Theme
FUKUYAMA BASE Workshop Vol.10 ThemeFUKUYAMA BASE Workshop Vol.10 Theme
FUKUYAMA BASE Workshop Vol.10 Theme
noteproject
 
Historiasexualdelhombre
HistoriasexualdelhombreHistoriasexualdelhombre
Historiasexualdelhombre
Rcabellocaja
 
Ad

Similar to Introduction to Redis (20)

Redis everywhere - PHP London
Redis everywhere - PHP LondonRedis everywhere - PHP London
Redis everywhere - PHP London
Ricard Clau
 
Redis Labcamp
Redis LabcampRedis Labcamp
Redis Labcamp
Angelo Simone Scotto
 
Redis Everywhere - Sunshine PHP
Redis Everywhere - Sunshine PHPRedis Everywhere - Sunshine PHP
Redis Everywhere - Sunshine PHP
Ricard Clau
 
Speed up your Symfony2 application and build awesome features with Redis
Speed up your Symfony2 application and build awesome features with RedisSpeed up your Symfony2 application and build awesome features with Redis
Speed up your Symfony2 application and build awesome features with Redis
Ricard Clau
 
Big Data Day LA 2016/ NoSQL track - Analytics at the Speed of Light with Redi...
Big Data Day LA 2016/ NoSQL track - Analytics at the Speed of Light with Redi...Big Data Day LA 2016/ NoSQL track - Analytics at the Speed of Light with Redi...
Big Data Day LA 2016/ NoSQL track - Analytics at the Speed of Light with Redi...
Data Con LA
 
IBM Internet-of-Things architecture and capabilities
IBM Internet-of-Things architecture and capabilitiesIBM Internet-of-Things architecture and capabilities
IBM Internet-of-Things architecture and capabilities
IBM_Info_Management
 
Introduction to Redis
Introduction to RedisIntroduction to Redis
Introduction to Redis
Ofer Zelig
 
Redis data structure and Performance Optimization
Redis data structure and Performance OptimizationRedis data structure and Performance Optimization
Redis data structure and Performance Optimization
Knoldus Inc.
 
IBM IoT Architecture and Capabilities at the Edge and Cloud
IBM IoT Architecture and Capabilities at the Edge and Cloud IBM IoT Architecture and Capabilities at the Edge and Cloud
IBM IoT Architecture and Capabilities at the Edge and Cloud
Pradeep Natarajan
 
5 Popular Choices for NoSQL on a Microsoft Platform - Tulsa - July 2018
5 Popular Choices for NoSQL on a Microsoft Platform - Tulsa - July 20185 Popular Choices for NoSQL on a Microsoft Platform - Tulsa - July 2018
5 Popular Choices for NoSQL on a Microsoft Platform - Tulsa - July 2018
Matthew Groves
 
Mini-Training: Redis
Mini-Training: RedisMini-Training: Redis
Mini-Training: Redis
Betclic Everest Group Tech Team
 
Navigating Transactions: ACID Complexity in Modern Databases
Navigating Transactions: ACID Complexity in Modern DatabasesNavigating Transactions: ACID Complexity in Modern Databases
Navigating Transactions: ACID Complexity in Modern Databases
Shivji Kumar Jha
 
Navigating Transactions: ACID Complexity in Modern Databases- Mydbops Open So...
Navigating Transactions: ACID Complexity in Modern Databases- Mydbops Open So...Navigating Transactions: ACID Complexity in Modern Databases- Mydbops Open So...
Navigating Transactions: ACID Complexity in Modern Databases- Mydbops Open So...
Mydbops
 
MongoDB Evenings Boston - An Update on MongoDB's WiredTiger Storage Engine
MongoDB Evenings Boston - An Update on MongoDB's WiredTiger Storage EngineMongoDB Evenings Boston - An Update on MongoDB's WiredTiger Storage Engine
MongoDB Evenings Boston - An Update on MongoDB's WiredTiger Storage Engine
MongoDB
 
REDIS327
REDIS327REDIS327
REDIS327
Rajan Bhatt
 
Oracle Database Performance Tuning Advanced Features and Best Practices for DBAs
Oracle Database Performance Tuning Advanced Features and Best Practices for DBAsOracle Database Performance Tuning Advanced Features and Best Practices for DBAs
Oracle Database Performance Tuning Advanced Features and Best Practices for DBAs
Zohar Elkayam
 
NoSQL databases pros and cons
NoSQL databases pros and consNoSQL databases pros and cons
NoSQL databases pros and cons
Fabio Fumarola
 
05 integrate redis
05 integrate redis05 integrate redis
05 integrate redis
Erhwen Kuo
 
5 Popular Choices for NoSQL on a Microsoft Platform
5 Popular Choices for NoSQL on a Microsoft Platform5 Popular Choices for NoSQL on a Microsoft Platform
5 Popular Choices for NoSQL on a Microsoft Platform
All Things Open
 
5 Popular Choices for NoSQL on a Microsoft Platform - All Things Open - Octob...
5 Popular Choices for NoSQL on a Microsoft Platform - All Things Open - Octob...5 Popular Choices for NoSQL on a Microsoft Platform - All Things Open - Octob...
5 Popular Choices for NoSQL on a Microsoft Platform - All Things Open - Octob...
Matthew Groves
 
Redis everywhere - PHP London
Redis everywhere - PHP LondonRedis everywhere - PHP London
Redis everywhere - PHP London
Ricard Clau
 
Redis Everywhere - Sunshine PHP
Redis Everywhere - Sunshine PHPRedis Everywhere - Sunshine PHP
Redis Everywhere - Sunshine PHP
Ricard Clau
 
Speed up your Symfony2 application and build awesome features with Redis
Speed up your Symfony2 application and build awesome features with RedisSpeed up your Symfony2 application and build awesome features with Redis
Speed up your Symfony2 application and build awesome features with Redis
Ricard Clau
 
Big Data Day LA 2016/ NoSQL track - Analytics at the Speed of Light with Redi...
Big Data Day LA 2016/ NoSQL track - Analytics at the Speed of Light with Redi...Big Data Day LA 2016/ NoSQL track - Analytics at the Speed of Light with Redi...
Big Data Day LA 2016/ NoSQL track - Analytics at the Speed of Light with Redi...
Data Con LA
 
IBM Internet-of-Things architecture and capabilities
IBM Internet-of-Things architecture and capabilitiesIBM Internet-of-Things architecture and capabilities
IBM Internet-of-Things architecture and capabilities
IBM_Info_Management
 
Introduction to Redis
Introduction to RedisIntroduction to Redis
Introduction to Redis
Ofer Zelig
 
Redis data structure and Performance Optimization
Redis data structure and Performance OptimizationRedis data structure and Performance Optimization
Redis data structure and Performance Optimization
Knoldus Inc.
 
IBM IoT Architecture and Capabilities at the Edge and Cloud
IBM IoT Architecture and Capabilities at the Edge and Cloud IBM IoT Architecture and Capabilities at the Edge and Cloud
IBM IoT Architecture and Capabilities at the Edge and Cloud
Pradeep Natarajan
 
5 Popular Choices for NoSQL on a Microsoft Platform - Tulsa - July 2018
5 Popular Choices for NoSQL on a Microsoft Platform - Tulsa - July 20185 Popular Choices for NoSQL on a Microsoft Platform - Tulsa - July 2018
5 Popular Choices for NoSQL on a Microsoft Platform - Tulsa - July 2018
Matthew Groves
 
Navigating Transactions: ACID Complexity in Modern Databases
Navigating Transactions: ACID Complexity in Modern DatabasesNavigating Transactions: ACID Complexity in Modern Databases
Navigating Transactions: ACID Complexity in Modern Databases
Shivji Kumar Jha
 
Navigating Transactions: ACID Complexity in Modern Databases- Mydbops Open So...
Navigating Transactions: ACID Complexity in Modern Databases- Mydbops Open So...Navigating Transactions: ACID Complexity in Modern Databases- Mydbops Open So...
Navigating Transactions: ACID Complexity in Modern Databases- Mydbops Open So...
Mydbops
 
MongoDB Evenings Boston - An Update on MongoDB's WiredTiger Storage Engine
MongoDB Evenings Boston - An Update on MongoDB's WiredTiger Storage EngineMongoDB Evenings Boston - An Update on MongoDB's WiredTiger Storage Engine
MongoDB Evenings Boston - An Update on MongoDB's WiredTiger Storage Engine
MongoDB
 
Oracle Database Performance Tuning Advanced Features and Best Practices for DBAs
Oracle Database Performance Tuning Advanced Features and Best Practices for DBAsOracle Database Performance Tuning Advanced Features and Best Practices for DBAs
Oracle Database Performance Tuning Advanced Features and Best Practices for DBAs
Zohar Elkayam
 
NoSQL databases pros and cons
NoSQL databases pros and consNoSQL databases pros and cons
NoSQL databases pros and cons
Fabio Fumarola
 
05 integrate redis
05 integrate redis05 integrate redis
05 integrate redis
Erhwen Kuo
 
5 Popular Choices for NoSQL on a Microsoft Platform
5 Popular Choices for NoSQL on a Microsoft Platform5 Popular Choices for NoSQL on a Microsoft Platform
5 Popular Choices for NoSQL on a Microsoft Platform
All Things Open
 
5 Popular Choices for NoSQL on a Microsoft Platform - All Things Open - Octob...
5 Popular Choices for NoSQL on a Microsoft Platform - All Things Open - Octob...5 Popular Choices for NoSQL on a Microsoft Platform - All Things Open - Octob...
5 Popular Choices for NoSQL on a Microsoft Platform - All Things Open - Octob...
Matthew Groves
 
Ad

More from TO THE NEW | Technology (20)

10 Best Node.js Practices you Need to Know!
10 Best Node.js Practices you Need to Know!10 Best Node.js Practices you Need to Know!
10 Best Node.js Practices you Need to Know!
TO THE NEW | Technology
 
10 Pragmatic UX techniques for building smarter products:
10 Pragmatic UX techniques for building smarter products:10 Pragmatic UX techniques for building smarter products:
10 Pragmatic UX techniques for building smarter products:
TO THE NEW | Technology
 
12 Key points which make Swift more effective than Objective C
12 Key points which make Swift more effective than Objective C12 Key points which make Swift more effective than Objective C
12 Key points which make Swift more effective than Objective C
TO THE NEW | Technology
 
Gulp - The Streaming Build System
Gulp - The Streaming Build SystemGulp - The Streaming Build System
Gulp - The Streaming Build System
TO THE NEW | Technology
 
Grails Spring Boot
Grails Spring BootGrails Spring Boot
Grails Spring Boot
TO THE NEW | Technology
 
AWS Elastic Beanstalk
AWS Elastic BeanstalkAWS Elastic Beanstalk
AWS Elastic Beanstalk
TO THE NEW | Technology
 
Content migration to AEM
Content migration to AEMContent migration to AEM
Content migration to AEM
TO THE NEW | Technology
 
AWS CodeDeploy
AWS CodeDeployAWS CodeDeploy
AWS CodeDeploy
TO THE NEW | Technology
 
An introduction to Object Oriented JavaScript
An introduction to Object Oriented JavaScriptAn introduction to Object Oriented JavaScript
An introduction to Object Oriented JavaScript
TO THE NEW | Technology
 
Object Oriented JavaScript - II
Object Oriented JavaScript - IIObject Oriented JavaScript - II
Object Oriented JavaScript - II
TO THE NEW | Technology
 
MongoDb and NoSQL
MongoDb and NoSQLMongoDb and NoSQL
MongoDb and NoSQL
TO THE NEW | Technology
 
(AWS) Auto Scaling : Evening Session by Amazon and IntelliGrape Software
(AWS) Auto Scaling : Evening Session by Amazon and IntelliGrape Software(AWS) Auto Scaling : Evening Session by Amazon and IntelliGrape Software
(AWS) Auto Scaling : Evening Session by Amazon and IntelliGrape Software
TO THE NEW | Technology
 
MongoDB using Grails plugin by puneet behl
MongoDB using Grails plugin by puneet behlMongoDB using Grails plugin by puneet behl
MongoDB using Grails plugin by puneet behl
TO THE NEW | Technology
 
Cloud Formation
Cloud FormationCloud Formation
Cloud Formation
TO THE NEW | Technology
 
BigData Search Simplified with ElasticSearch
BigData Search Simplified with ElasticSearchBigData Search Simplified with ElasticSearch
BigData Search Simplified with ElasticSearch
TO THE NEW | Technology
 
JULY IN GRAILS
JULY IN GRAILSJULY IN GRAILS
JULY IN GRAILS
TO THE NEW | Technology
 
Grails Spock Testing
Grails Spock TestingGrails Spock Testing
Grails Spock Testing
TO THE NEW | Technology
 
Getting groovier-with-vertx
Getting groovier-with-vertxGetting groovier-with-vertx
Getting groovier-with-vertx
TO THE NEW | Technology
 
Introduction to Kanban
Introduction to KanbanIntroduction to Kanban
Introduction to Kanban
TO THE NEW | Technology
 
Introduction to Heroku
Introduction to HerokuIntroduction to Heroku
Introduction to Heroku
TO THE NEW | Technology
 
10 Best Node.js Practices you Need to Know!
10 Best Node.js Practices you Need to Know!10 Best Node.js Practices you Need to Know!
10 Best Node.js Practices you Need to Know!
TO THE NEW | Technology
 
10 Pragmatic UX techniques for building smarter products:
10 Pragmatic UX techniques for building smarter products:10 Pragmatic UX techniques for building smarter products:
10 Pragmatic UX techniques for building smarter products:
TO THE NEW | Technology
 
12 Key points which make Swift more effective than Objective C
12 Key points which make Swift more effective than Objective C12 Key points which make Swift more effective than Objective C
12 Key points which make Swift more effective than Objective C
TO THE NEW | Technology
 
An introduction to Object Oriented JavaScript
An introduction to Object Oriented JavaScriptAn introduction to Object Oriented JavaScript
An introduction to Object Oriented JavaScript
TO THE NEW | Technology
 
(AWS) Auto Scaling : Evening Session by Amazon and IntelliGrape Software
(AWS) Auto Scaling : Evening Session by Amazon and IntelliGrape Software(AWS) Auto Scaling : Evening Session by Amazon and IntelliGrape Software
(AWS) Auto Scaling : Evening Session by Amazon and IntelliGrape Software
TO THE NEW | Technology
 
MongoDB using Grails plugin by puneet behl
MongoDB using Grails plugin by puneet behlMongoDB using Grails plugin by puneet behl
MongoDB using Grails plugin by puneet behl
TO THE NEW | Technology
 
BigData Search Simplified with ElasticSearch
BigData Search Simplified with ElasticSearchBigData Search Simplified with ElasticSearch
BigData Search Simplified with ElasticSearch
TO THE NEW | Technology
 

Recently uploaded (20)

Mobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi ArabiaMobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi Arabia
Steve Jonas
 
Hands On: Create a Lightning Aura Component with force:RecordData
Hands On: Create a Lightning Aura Component with force:RecordDataHands On: Create a Lightning Aura Component with force:RecordData
Hands On: Create a Lightning Aura Component with force:RecordData
Lynda Kane
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Technology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data AnalyticsTechnology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data Analytics
InData Labs
 
Electronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploitElectronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploit
niftliyevhuseyn
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
SOFTTECHHUB
 
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdfSAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
Precisely
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
"PHP and MySQL CRUD Operations for Student Management System"
"PHP and MySQL CRUD Operations for Student Management System""PHP and MySQL CRUD Operations for Student Management System"
"PHP and MySQL CRUD Operations for Student Management System"
Jainul Musani
 
2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx
Samuele Fogagnolo
 
Salesforce AI Associate 2 of 2 Certification.docx
Salesforce AI Associate 2 of 2 Certification.docxSalesforce AI Associate 2 of 2 Certification.docx
Salesforce AI Associate 2 of 2 Certification.docx
José Enrique López Rivera
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
Semantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AISemantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AI
artmondano
 
Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
 
Mobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi ArabiaMobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi Arabia
Steve Jonas
 
Hands On: Create a Lightning Aura Component with force:RecordData
Hands On: Create a Lightning Aura Component with force:RecordDataHands On: Create a Lightning Aura Component with force:RecordData
Hands On: Create a Lightning Aura Component with force:RecordData
Lynda Kane
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Technology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data AnalyticsTechnology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data Analytics
InData Labs
 
Electronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploitElectronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploit
niftliyevhuseyn
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
SOFTTECHHUB
 
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdfSAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
Precisely
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
"PHP and MySQL CRUD Operations for Student Management System"
"PHP and MySQL CRUD Operations for Student Management System""PHP and MySQL CRUD Operations for Student Management System"
"PHP and MySQL CRUD Operations for Student Management System"
Jainul Musani
 
2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx
Samuele Fogagnolo
 
Salesforce AI Associate 2 of 2 Certification.docx
Salesforce AI Associate 2 of 2 Certification.docxSalesforce AI Associate 2 of 2 Certification.docx
Salesforce AI Associate 2 of 2 Certification.docx
José Enrique López Rivera
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
Semantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AISemantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AI
artmondano
 
Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
 

Introduction to Redis

  • 2. Redis – Memory is the new Disk
  • 3. 1. What isRedis 2. Available clients 3. Data types 4. Operations on data types 5. Performance 6. Persistence 7. Sweet spots 8. Design considerations / Bestpractices 9. Adopters 3 Agenda
  • 4. ● Familiarity with NoSQL? ● Memcache? ● Redis? 4 Poll
  • 7. Collection of data structures exposed over the network 7 What is Redis
  • 8. NotjustStrings! Keys can contain Strings, Hashes, Lists, Sets and Sorted Sets 8 What is Redis
  • 9. What is Redis 9 “ Isee redis definitely more as a flexible tool than as a solution specialized to solve a specific problem. - SalvatoreSanfilippo
  • 10. A Brief History of Redis 1 0 • Started in 2009 by SalvatoreSanfillipo • VMWare hires Salvatore & Pieter Noordhuis • Financially supported and promoted by VMWare
  • 11. Redis Characteristics 10 • Issingle-threaded • Has queryble keynamespace • Isextremely fast (~100K operations/second) • Iseasy to install (no dependencies) • Issimple and flexible • Stores everything inmemory • Written in ANSI C and BSD licensed (free, open)
  • 12. Language Support 12 Ruby, Python, PHP,Erlang, Tcl, Perl, Lua, Java, Scala, Clojure, C#, C/C++, JavaScript/Node.js, Haskell, IO,Go
  • 13. Data Types 13 • Strings (Integers) • Lists • Hashes • Sets • Sorted Sets
  • 14. Thinking in Redis 14 • Thisis not an RDBMS • Itsall about the KEYS, and NOT the values • There is no querying onvalues • There are no indexes • There are no schemas
  • 15. Operations on Strings/Integers 15 • SETkey value • GETkey • MGET/MSET • INCR/DECR • INCRBYDECRBY • APPENDkey value • SETNXkey value • GETSETkey value
  • 16. Installation 16 • $ wget http://redis.googlecode.com/files/re dis-2.4.2.tar.gz • $ tar xzf redis-2.4.2.tar.gz • $ cd redis-2.4.2 • $make • $ ./src/redis-server
  • 17. Atomicity of Commands 17 • All of the built-in commands of Redis are atomic • Commands can be chained together (pipelined) to create complex atomic transactions • Redis is single threaded and therefore, no locking is necessary • In other words, commands like INCR won’t tread on each other’s toes coming from multiple clients simultaneously!
  • 18. Key Expiration 18 • When caching, we don’t want things to live forever • Any item in Redis can be made to expire after or at a certain time • EXPIREmy_key60 • EXPIREATmy_key 1293840000
  • 19. Operations on Lists 19 • LPUSH/RPUSHkey value [value...] • LPOP/RPOPkey • LRANGEkey start stop • LSETkey index value • LLENkey • LTRIMkey startstop • LINSERTkey before|after pivot value • BLPOPkey [key ...] timeout • LREMkey count value
  • 20. Operations on Sets 20 SINTERkey [key ...] SUNIONkey [key ...] SISMEMBER key member • SADDkey member • SPOPkey • SMEMBERSkey • • • • SCARD key
  • 21. Operations on Sorted Sets 20 • ZADDkey score member [score] [member] • ZCARDkey • ZCOUNTkey min max • ZINCRBYkey increment member • ZRANKkey member • ZRANGEkey start stop [WITHSCORES] • ZSCOREkey member
  • 22. Operations on Hashes 22 HVALSkey HLENkey HEXISTSkey field • HSETkey field value • HGETkey field • HKEYSkey • • • • HDELkey field [field ...]
  • 23. Operations on Keys 23 EXPIREkey seconds EXPIREATkey timestamp EXISTSkey • TYPEkey • TTLkey • KEYSpattern • • • • DELkey
  • 24. Redis Administration Commands 24 DBSIZE • MONITOR • SAVE/BGSAVE • INFO • • • FLUSHALL CONFIG SETparameter value
  • 25. Performance 25 We added two million items into a list in 1.28 seconds, with a networking layer between us and the server - SalvatoreSanfilippo,Creator
  • 26. Performance 26 • Almost same for read and write, handles writes faster than read • 100 Kops/second • Performance depends a lot on Operation complexity • Hardware • Persistence configuration • • • Payload size Batch size(pipelining)
  • 28. Demo 28 Key Expiry • Redis CLI • Getting Help • Operations on Strings • • • Operations on Lists,Set Groovy program operating on Sorted Set and Hash • MONITOR / INFO / DBSIZE/TYPE • Redis benchmark
  • 29. Data Durability 29 Dump data to disk after certain conditions are met OR Manually AND/OR Append Only File (AOF)
  • 30. Advantages of Persistence 30 • On server restart, Redis re-populates its cache from files stored on disk • No issue of “cache warm-up” • Itis possible to back-up and replicate the files/cache
  • 31. Memory Requirements? 30 • Depends upon the payload size, and the data-type used • Instagram reports that they stored 300 million key-value pairs in about 5 GB of memory =>16 MB/million pairs (they also report that Memcache requires 52 MB for the same million keys)
  • 32. Sweet Spots / Use-cases 32 Most read / shared articles Share state betweenprocesses / Session Tokens Auto-completion API rate limiting Activity Feeds Job Queue (LPUSH & RPOP) • Cache Server • Stats collection • Tag Cloud • • • • • • • URL Shortener mapping
  • 33. Case Studies 33 • Video Marketing Platform • Real-time analytics • Stats for usage reports toclients • Content Publishing application • Tag Cloud • Top Read Articles • URL Shortening information • Social Media Marketingapplication • Daily, Monthly and overall stats collection • List of online users
  • 34. Design Considerations / Best Practices 34 Use consistent key namespace nomenclature Have human readable keys • Avoid excessively longkeys • • • Since there is no querying on values, keys should be thought-out before hand • Store data based on use-cases. Ad-hoc queries can-be very expensive • Multiple databases are useful for segmenting key namespaces, especially where key queries are needed
  • 35. Design Considerations / Best Practices 35 • All datamust fit in memory • • Data duplication/redundancy isOK Persistence strategy should be chosen based on the kind of data that you are storing and performance trade-off must be understood • Good for write-heavy, frequently changing and non-relational data • Polyglot-persistence isa smartchoice • Start by using Redis to augment, and then replace
  • 36. Some Adopters 36 Digg • Stackoverflow • Craiglist • Github • • • Instagram Blizzard Entertainment
  • 38. Advanced Features 38 Pub /Sub Transactions Using multiple databases Commands pipelining Clustering / Sharding • Master-slave replication • • • • • • LUA scripting
  • 39. What is Redis 39 • Simple &Easytouse(Key / Value, data-types map toprogramming Fast(100 Kops / second) Powerful(data-types, operations on data-types) Safe(persistence) Easytouse(various client libraries) languages) • Flexible (Supports commonly used data-types • • • • • Widely adopted (Digg, Craiglist, Github …)
  • 40. Discussion 40 Now that you understand Redis and its capabilities, what use-cases do come to your mind? What are your concerns around usage of Redis?
  • 41. Contact us Our Office Client Location As the Advanced Consulting Partners of MongoDB we have delivered some amazing MongoDB development projects, Know more: Click Here To Know More! Have more queries on Grails? Talk to our GRAILS experts Now! Talk To Our Experts