SlideShare una empresa de Scribd logo
1 de 37
Descargar para leer sin conexión
Getting Started with Redis
Toronto Pivotal User Group
Syed Faisal Akber
VMware, Inc.
2014-08-20
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 1 / 37
1 Overview of Redis
2 Building and Installing Redis
3 Starting Redis
4 Data Structures
5 Programming with Redis
6 Basics of Administration
7 Advanced Topics
8 Conclusions
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 2 / 37
Overview of Redis
The word Redis means REmote DIctionary Server
It is an advanced key-value store or a data
structure store
Runs entirely in memory
All data is kept in memory
Quick data access since it is maintained in memory
Data can be backed up to disk periodically
Single threaded server
Extensible via Lua scripts
Able to replicate data between servers
Clustering also available
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 3 / 37
Building and Installing Redis
Install from source
Download from http://redis.io/download
Download the Stable release
# tar -xvzf redis-2.8.13.tar.gz
# cd redis-2.8.13
# make
# make test
# make PREFIX=/path/to/install/directory install
Packages for Mac OS X are available via Brew
Pivotal Redis repository has a prebuilt package for
RedHat
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 4 / 37
Starting Redis
Starting the Redis server use the redis-server
binary
Once the server starts, you can connect to it using
your programs or the command-line utility
redis-cli
The default port that Redis will use is 6379 and
listens on all interfaces
The Redis server will look for the configuration file
in the current directory
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 5 / 37
Data Structures
Strings
Lists
Sets
Ordered Sets
Hashes
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 6 / 37
Strings I
For each key, the value is a binary safe string
Simplest data structure
127.0.0.1:6379> set key "value of possible values"
OK
127.0.0.1:6379> get key
"value of possible values"
127.0.0.1:6379> del key
(integer) 1
127.0.0.1:6379> get key
(nil)
Numeric operations
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 7 / 37
Strings II
Set the value to a number and perform numeric
operations
127.0.0.1:6379> set counter1 0
OK
127.0.0.1:6379> set counter2 4
OK
127.0.0.1:6379> INCRBY counter2 5
(integer) 9
127.0.0.1:6379> INCR counter1
(integer) 1
127.0.0.1:6379> decr counter2
(integer) 8
127.0.0.1:6379> mget counter1 counter2
1) "1"
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 8 / 37
Strings III
2) "8"
Bit fields
Set and perform bit-wise operations on strings
127.0.0.1:6379> setbit field0 5 1
(integer) 0
127.0.0.1:6379> get field0
"x04"
127.0.0.1:6379> setbit field1 4 1
(integer) 0
127.0.0.1:6379> setbit field1 5 1
(integer) 0
127.0.0.1:6379> bitop AND afields field0 field1
(integer) 1
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 9 / 37
Strings IV
127.0.0.1:6379> bitop OR ofields field0 field1
(integer) 1
127.0.0.1:6379> get afields
"x04"
127.0.0.1:6379> get ofields
"x0c"
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 10 / 37
Lists I
Lists keep track of a number of items under the
same key
Can be used as a stack
127.0.0.1:6379> lpush list 1 2 3
(integer) 3
127.0.0.1:6379> lpush list 4
(integer) 4
127.0.0.1:6379> llen list
(integer) 4
127.0.0.1:6379> lset list 2 0
OK
127.0.0.1:6379> lpop list
"4"
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 11 / 37
Lists II
127.0.0.1:6379> llen list
(integer) 3
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 12 / 37
Sets
A set is a collection of items
Does not allow duplicates
Mathematical set operations work here
127.0.0.1:6379> sadd set0 5 4 3 2 1
(integer) 5
127.0.0.1:6379> sadd set1 4 5 6 7 8
(integer) 5
127.0.0.1:6379> sinter set0 set1
1) "4"
2) "5"
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 13 / 37
Ordered Sets
Ordered sets are similar to normal sets but retain
sorting/order
Set members carry a score to indicate user-defined
sorting order
127.0.0.1:6379> zadd newset 6 a 2 b 4 c 4 d 1 e 6 f
(integer) 6
127.0.0.1:6379> zrange newset 0 6
1) "e"
2) "b"
3) "c"
4) "d"
5) "a"
6) "f"
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 14 / 37
Hashes I
Each key can have subkeys (called fields) with its
own values
Consider a structure in C
struct users{
char *name;
int uid;}
To store this in Redis use the HSET command
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 15 / 37
Hashes II
127.0.0.1:6379> HSET users:rose name "Rose Tyler"
(integer) 1
127.0.0.1:6379> HSET users:rose uid 1
(integer) 1
127.0.0.1:6379> HGETALL users:rose
1) "name"
2) "Rose Tyler"
3) "uid"
4) "1"
127.0.0.1:6379> HKEYS users:rose
1) "name"
2) "uid"
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 16 / 37
Message Passing
A publish/subscribe mechanism is present for
broadcasting messages
It is lightweight and easy to use
Servers broadcast messages to channels
Clients subscribe to channels of interest
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 17 / 37
Programming with Redis
There are many “clients” or drivers available
Most are very mature
They include:
C
Common Lisp
Java
Perl
Prolog
Python
Ruby
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 18 / 37
Perl
One of several Perl clients, the recommended client
is Redis from CPAN
my $redis = Redis->new(
server=’redis.example.com:8080’,
name=’my_connection_name’);
$redis->get(’key’);
$redis->set(’key’ => ’value’);
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 19 / 37
Python
Install the driver using pip
import redis
redis = redis.Redis(host=’redis.example.com’,
port=8080, db=0)
redis.sadd(’team1’, ’player:mike’, ’player:jane’,
’player:joe’)
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 20 / 37
Java
The recommended client is Jedis
Jedis jedis = new Jedis("redis.example.com");
jedis.set("foo", "bar");
String value = jedis.get("foo");
Use it as a Maven dependency or download the jar
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.4.2</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 21 / 37
Basics of Administration I
Ensure enough memory and other resources are
available for Redis
Setup the configuration file (start with sample)
Configure network bind addresses
Configure how often to write to disk
Configure Operating System
Increase the file descriptor limit if there’s a large number
of connections
Add vm.overcommit memory = 1 to
/etc/sysctl.conf to prevent failure of background
saves under low memory connections
Configure start-up scripts
Configure backup jobs
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 22 / 37
Running Redis in a Virtual Machine
Configure the Memory Reservation to be 100% of
the Allocated Memory
Ensure enough disk space is allocated to Virtual
Machine
Resource Pools should have adequate resources
allocated
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 23 / 37
Advanced Topics
Below are some topics to research afterwards
Replication
Backups
Sentinel
Extensibility via Lua scripts
Transactions
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 24 / 37
Replication
Automatically have all of the data replicated to
remote servers
Use replication for redundancy
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 25 / 37
Backups
Disable disk writing on primary servers to improve
performance
Take backups of secondary servers
Use either append-only files or the snapshot
mechanism
Employ third-party backup software to protect save
files
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 26 / 37
Sentinel
Sentinel utility to make Redis servers Highly
Available
Features include:
Monitoring
Notification
Automatic Failover
Configuration provider
Uses Master/Slave topology
Slaves are in read-only mode
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 27 / 37
Scripting with Lua
Small lightweight scripting platform
Lua is similar to BASIC
Allows for extensibility of Redis
Offload processing to Redis for performance
Analogous to RDBMS stored procedures
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 28 / 37
Transactions and Pipelining
Redis allows for transaction based operations for
atomicity
Commands can be pipelined to improve performance
Pipelining can be used within transactions
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 29 / 37
Conclusions
Redis is a memory based datastore
Redis is FAST
It can store data in different structures
Programming with Redis is easy
Flexible administration options
Redis has some neat features
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 30 / 37
Acknowledgements
Salvatore Sanfilippo – Pivotal
Pieter Noordhuis – Pivotal
Dan Buchko – Pivotal
Luke Shannon – Pivotal
Matt Stancliff – Pivotal
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 31 / 37
References I
Seguin, Karl. The Little Redis Book
http://openmymind.net/redis.pdf
Macedo, Tiago and Fred Oliveira. 2011. Redis
Cookbook O’Reilly Media, Sebastopol, U.S.A.
Redis Web-Site http://redis.io/
Redis Documentation
http://redis.io/documentation
Redis Download http://redis.io/download
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 32 / 37
References II
Redis Documentation
http://redis.io/documentation
Redis Commands http://redis.io/commands
redissentinel Redis Sentinel Documentation
http://redis.io/topics/sentinel
The Programming Language Lua
http://www.lua.org/
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 33 / 37
References III
Salihefendic, Amir. 2010. Redis – The Hacker’s
Database (Google Tech Talk Video)
http://youtu.be/1BS3UVSLX-I
Virtual Machine Memory http://vmw.re/1BBkstW
Redis CPAN
http://search.cpan.org/~melo/Redis-1.961/lib/
Jedis Repository
https://github.com/xetorthio/jedis
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 34 / 37
References IV
Redmond, Eric and Jim R. Wilson. 2012. Seven
Databases in Seven Weeks: A Guide to Modern
Databases and the NoSQL Movement Pragmatic
Bookshelf.
RestMQ – Redis based message queue
http://restmq.com/
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 35 / 37
Questions?
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 36 / 37
Contact Information
E-mail: fakber@vmware.com
Twitter: @vCoreDump
S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 37 / 37

Más contenido relacionado

La actualidad más candente

DataStax | Advanced DSE Analytics Client Configuration (Jacek Lewandowski) | ...
DataStax | Advanced DSE Analytics Client Configuration (Jacek Lewandowski) | ...DataStax | Advanced DSE Analytics Client Configuration (Jacek Lewandowski) | ...
DataStax | Advanced DSE Analytics Client Configuration (Jacek Lewandowski) | ...DataStax
 
Optimizing Oracle databases with SSD - April 2014
Optimizing Oracle databases with SSD - April 2014Optimizing Oracle databases with SSD - April 2014
Optimizing Oracle databases with SSD - April 2014Guy Harrison
 
Ceph Community Talk on High-Performance Solid Sate Ceph
Ceph Community Talk on High-Performance Solid Sate Ceph Ceph Community Talk on High-Performance Solid Sate Ceph
Ceph Community Talk on High-Performance Solid Sate Ceph Ceph Community
 
PGCon 2014 - What Do You Mean my Database Server Core Dumped? - How to Inspec...
PGCon 2014 - What Do You Mean my Database Server Core Dumped? - How to Inspec...PGCon 2014 - What Do You Mean my Database Server Core Dumped? - How to Inspec...
PGCon 2014 - What Do You Mean my Database Server Core Dumped? - How to Inspec...Faisal Akber
 
Enable greater data reduction and storage performance with Dell EMC PowerStor...
Enable greater data reduction and storage performance with Dell EMC PowerStor...Enable greater data reduction and storage performance with Dell EMC PowerStor...
Enable greater data reduction and storage performance with Dell EMC PowerStor...Principled Technologies
 
Upgrade 10204-to-10205 on-2-node_rac_linux_x86_64_detail-steps_v0.1
Upgrade 10204-to-10205 on-2-node_rac_linux_x86_64_detail-steps_v0.1Upgrade 10204-to-10205 on-2-node_rac_linux_x86_64_detail-steps_v0.1
Upgrade 10204-to-10205 on-2-node_rac_linux_x86_64_detail-steps_v0.1Raheel Syed
 
What's cool in the new and updated OSGi Specs (EclipseCon 2014)
What's cool in the new and updated OSGi Specs (EclipseCon 2014)What's cool in the new and updated OSGi Specs (EclipseCon 2014)
What's cool in the new and updated OSGi Specs (EclipseCon 2014)David Bosschaert
 
Accumulo Summit 2015: Attempting to answer unanswerable questions: Key manage...
Accumulo Summit 2015: Attempting to answer unanswerable questions: Key manage...Accumulo Summit 2015: Attempting to answer unanswerable questions: Key manage...
Accumulo Summit 2015: Attempting to answer unanswerable questions: Key manage...Accumulo Summit
 
Benchmark emc vnx7500, emc fast suite, emc snap sure and oracle rac on v-mware
Benchmark   emc vnx7500, emc fast suite, emc snap sure and oracle rac on v-mwareBenchmark   emc vnx7500, emc fast suite, emc snap sure and oracle rac on v-mware
Benchmark emc vnx7500, emc fast suite, emc snap sure and oracle rac on v-mwaresolarisyougood
 
SharePoint 2010 Virtualization - Hungarian SharePoint User Group
SharePoint 2010 Virtualization - Hungarian SharePoint User GroupSharePoint 2010 Virtualization - Hungarian SharePoint User Group
SharePoint 2010 Virtualization - Hungarian SharePoint User GroupMichael Noel
 
Vbox virtual box在oracle linux 5 - shoug 梁洪响
Vbox virtual box在oracle linux 5 - shoug 梁洪响Vbox virtual box在oracle linux 5 - shoug 梁洪响
Vbox virtual box在oracle linux 5 - shoug 梁洪响maclean liu
 
Advanced resource management and scalability features for cloud environment u...
Advanced resource management and scalability features for cloud environment u...Advanced resource management and scalability features for cloud environment u...
Advanced resource management and scalability features for cloud environment u...Grigale LTD
 
Managing Oracle Enterprise Manager Cloud Control 12c with Oracle Clusterware
Managing Oracle Enterprise Manager Cloud Control 12c with Oracle ClusterwareManaging Oracle Enterprise Manager Cloud Control 12c with Oracle Clusterware
Managing Oracle Enterprise Manager Cloud Control 12c with Oracle ClusterwareLeighton Nelson
 
Oracle Exadata 1Z0-485 Certification
Oracle Exadata 1Z0-485 CertificationOracle Exadata 1Z0-485 Certification
Oracle Exadata 1Z0-485 CertificationExadatadba
 
图文详解安装Net backup 6.5备份恢复oracle 10g rac 数据库
图文详解安装Net backup 6.5备份恢复oracle 10g rac 数据库图文详解安装Net backup 6.5备份恢复oracle 10g rac 数据库
图文详解安装Net backup 6.5备份恢复oracle 10g rac 数据库maclean liu
 
Oracle Clusterware Node Management and Voting Disks
Oracle Clusterware Node Management and Voting DisksOracle Clusterware Node Management and Voting Disks
Oracle Clusterware Node Management and Voting DisksMarkus Michalewicz
 
Building your first sql server cluster
Building your first sql server clusterBuilding your first sql server cluster
Building your first sql server clusterJoseph D'Antoni
 
Building an Oracle Grid with Oracle VM on Dell Blade Servers and EqualLogic i...
Building an Oracle Grid with Oracle VM on Dell Blade Servers and EqualLogic i...Building an Oracle Grid with Oracle VM on Dell Blade Servers and EqualLogic i...
Building an Oracle Grid with Oracle VM on Dell Blade Servers and EqualLogic i...Lindsey Aitchison
 
Enterprise managerclodcontrolinstallconfiguration emc12c
Enterprise managerclodcontrolinstallconfiguration emc12cEnterprise managerclodcontrolinstallconfiguration emc12c
Enterprise managerclodcontrolinstallconfiguration emc12cRakesh Gujjarlapudi
 
Deep Dive into RDS PostgreSQL Universe
Deep Dive into RDS PostgreSQL UniverseDeep Dive into RDS PostgreSQL Universe
Deep Dive into RDS PostgreSQL UniverseJignesh Shah
 

La actualidad más candente (20)

DataStax | Advanced DSE Analytics Client Configuration (Jacek Lewandowski) | ...
DataStax | Advanced DSE Analytics Client Configuration (Jacek Lewandowski) | ...DataStax | Advanced DSE Analytics Client Configuration (Jacek Lewandowski) | ...
DataStax | Advanced DSE Analytics Client Configuration (Jacek Lewandowski) | ...
 
Optimizing Oracle databases with SSD - April 2014
Optimizing Oracle databases with SSD - April 2014Optimizing Oracle databases with SSD - April 2014
Optimizing Oracle databases with SSD - April 2014
 
Ceph Community Talk on High-Performance Solid Sate Ceph
Ceph Community Talk on High-Performance Solid Sate Ceph Ceph Community Talk on High-Performance Solid Sate Ceph
Ceph Community Talk on High-Performance Solid Sate Ceph
 
PGCon 2014 - What Do You Mean my Database Server Core Dumped? - How to Inspec...
PGCon 2014 - What Do You Mean my Database Server Core Dumped? - How to Inspec...PGCon 2014 - What Do You Mean my Database Server Core Dumped? - How to Inspec...
PGCon 2014 - What Do You Mean my Database Server Core Dumped? - How to Inspec...
 
Enable greater data reduction and storage performance with Dell EMC PowerStor...
Enable greater data reduction and storage performance with Dell EMC PowerStor...Enable greater data reduction and storage performance with Dell EMC PowerStor...
Enable greater data reduction and storage performance with Dell EMC PowerStor...
 
Upgrade 10204-to-10205 on-2-node_rac_linux_x86_64_detail-steps_v0.1
Upgrade 10204-to-10205 on-2-node_rac_linux_x86_64_detail-steps_v0.1Upgrade 10204-to-10205 on-2-node_rac_linux_x86_64_detail-steps_v0.1
Upgrade 10204-to-10205 on-2-node_rac_linux_x86_64_detail-steps_v0.1
 
What's cool in the new and updated OSGi Specs (EclipseCon 2014)
What's cool in the new and updated OSGi Specs (EclipseCon 2014)What's cool in the new and updated OSGi Specs (EclipseCon 2014)
What's cool in the new and updated OSGi Specs (EclipseCon 2014)
 
Accumulo Summit 2015: Attempting to answer unanswerable questions: Key manage...
Accumulo Summit 2015: Attempting to answer unanswerable questions: Key manage...Accumulo Summit 2015: Attempting to answer unanswerable questions: Key manage...
Accumulo Summit 2015: Attempting to answer unanswerable questions: Key manage...
 
Benchmark emc vnx7500, emc fast suite, emc snap sure and oracle rac on v-mware
Benchmark   emc vnx7500, emc fast suite, emc snap sure and oracle rac on v-mwareBenchmark   emc vnx7500, emc fast suite, emc snap sure and oracle rac on v-mware
Benchmark emc vnx7500, emc fast suite, emc snap sure and oracle rac on v-mware
 
SharePoint 2010 Virtualization - Hungarian SharePoint User Group
SharePoint 2010 Virtualization - Hungarian SharePoint User GroupSharePoint 2010 Virtualization - Hungarian SharePoint User Group
SharePoint 2010 Virtualization - Hungarian SharePoint User Group
 
Vbox virtual box在oracle linux 5 - shoug 梁洪响
Vbox virtual box在oracle linux 5 - shoug 梁洪响Vbox virtual box在oracle linux 5 - shoug 梁洪响
Vbox virtual box在oracle linux 5 - shoug 梁洪响
 
Advanced resource management and scalability features for cloud environment u...
Advanced resource management and scalability features for cloud environment u...Advanced resource management and scalability features for cloud environment u...
Advanced resource management and scalability features for cloud environment u...
 
Managing Oracle Enterprise Manager Cloud Control 12c with Oracle Clusterware
Managing Oracle Enterprise Manager Cloud Control 12c with Oracle ClusterwareManaging Oracle Enterprise Manager Cloud Control 12c with Oracle Clusterware
Managing Oracle Enterprise Manager Cloud Control 12c with Oracle Clusterware
 
Oracle Exadata 1Z0-485 Certification
Oracle Exadata 1Z0-485 CertificationOracle Exadata 1Z0-485 Certification
Oracle Exadata 1Z0-485 Certification
 
图文详解安装Net backup 6.5备份恢复oracle 10g rac 数据库
图文详解安装Net backup 6.5备份恢复oracle 10g rac 数据库图文详解安装Net backup 6.5备份恢复oracle 10g rac 数据库
图文详解安装Net backup 6.5备份恢复oracle 10g rac 数据库
 
Oracle Clusterware Node Management and Voting Disks
Oracle Clusterware Node Management and Voting DisksOracle Clusterware Node Management and Voting Disks
Oracle Clusterware Node Management and Voting Disks
 
Building your first sql server cluster
Building your first sql server clusterBuilding your first sql server cluster
Building your first sql server cluster
 
Building an Oracle Grid with Oracle VM on Dell Blade Servers and EqualLogic i...
Building an Oracle Grid with Oracle VM on Dell Blade Servers and EqualLogic i...Building an Oracle Grid with Oracle VM on Dell Blade Servers and EqualLogic i...
Building an Oracle Grid with Oracle VM on Dell Blade Servers and EqualLogic i...
 
Enterprise managerclodcontrolinstallconfiguration emc12c
Enterprise managerclodcontrolinstallconfiguration emc12cEnterprise managerclodcontrolinstallconfiguration emc12c
Enterprise managerclodcontrolinstallconfiguration emc12c
 
Deep Dive into RDS PostgreSQL Universe
Deep Dive into RDS PostgreSQL UniverseDeep Dive into RDS PostgreSQL Universe
Deep Dive into RDS PostgreSQL Universe
 

Destacado

Redis Developers Day 2015 - Secondary Indexes and State of Lua
Redis Developers Day 2015 - Secondary Indexes and State of LuaRedis Developers Day 2015 - Secondary Indexes and State of Lua
Redis Developers Day 2015 - Secondary Indexes and State of LuaItamar Haber
 
Build a Geospatial App with Redis 3.2- Andrew Bass, Sean Yesmunt, Sergio Prad...
Build a Geospatial App with Redis 3.2- Andrew Bass, Sean Yesmunt, Sergio Prad...Build a Geospatial App with Redis 3.2- Andrew Bass, Sean Yesmunt, Sergio Prad...
Build a Geospatial App with Redis 3.2- Andrew Bass, Sean Yesmunt, Sergio Prad...Redis Labs
 
Use Redis in Odd and Unusual Ways
Use Redis in Odd and Unusual WaysUse Redis in Odd and Unusual Ways
Use Redis in Odd and Unusual WaysItamar Haber
 
Get more than a cache back! The Microsoft Azure Redis Cache (NDC Oslo)
Get more than a cache back! The Microsoft Azure Redis Cache (NDC Oslo)Get more than a cache back! The Microsoft Azure Redis Cache (NDC Oslo)
Get more than a cache back! The Microsoft Azure Redis Cache (NDC Oslo)Maarten Balliauw
 
UV logic using redis bitmap
UV logic using redis bitmapUV logic using redis bitmap
UV logic using redis bitmap주용 오
 
RespClient - Minimal Redis Client for PowerShell
RespClient - Minimal Redis Client for PowerShellRespClient - Minimal Redis Client for PowerShell
RespClient - Minimal Redis Client for PowerShellYoshifumi Kawai
 
HIgh Performance Redis- Tague Griffith, GoPro
HIgh Performance Redis- Tague Griffith, GoProHIgh Performance Redis- Tague Griffith, GoPro
HIgh Performance Redis- Tague Griffith, GoProRedis Labs
 
Troubleshooting Redis- DaeMyung Kang, Kakao
Troubleshooting Redis- DaeMyung Kang, KakaoTroubleshooting Redis- DaeMyung Kang, Kakao
Troubleshooting Redis- DaeMyung Kang, KakaoRedis Labs
 
RedisConf 2016 talk - The Redis API: Simple, Composable, Powerful
RedisConf 2016 talk - The Redis API: Simple, Composable, PowerfulRedisConf 2016 talk - The Redis API: Simple, Composable, Powerful
RedisConf 2016 talk - The Redis API: Simple, Composable, PowerfulDynomiteDB
 
Using Redis as Distributed Cache for ASP.NET apps - Peter Kellner, 73rd Stre...
 Using Redis as Distributed Cache for ASP.NET apps - Peter Kellner, 73rd Stre... Using Redis as Distributed Cache for ASP.NET apps - Peter Kellner, 73rd Stre...
Using Redis as Distributed Cache for ASP.NET apps - Peter Kellner, 73rd Stre...Redis Labs
 
Scalable Streaming Data Pipelines with Redis
Scalable Streaming Data Pipelines with RedisScalable Streaming Data Pipelines with Redis
Scalable Streaming Data Pipelines with RedisAvram Lyon
 
Cloud Foundry for Data Science
Cloud Foundry for Data ScienceCloud Foundry for Data Science
Cloud Foundry for Data ScienceIan Huston
 
Redis & MongoDB: Stop Big Data Indigestion Before It Starts
Redis & MongoDB: Stop Big Data Indigestion Before It StartsRedis & MongoDB: Stop Big Data Indigestion Before It Starts
Redis & MongoDB: Stop Big Data Indigestion Before It StartsItamar Haber
 
Back your App with MySQL & Redis, the Cloud Foundry Way- Kenny Bastani, Pivotal
Back your App with MySQL & Redis, the Cloud Foundry Way- Kenny Bastani, PivotalBack your App with MySQL & Redis, the Cloud Foundry Way- Kenny Bastani, Pivotal
Back your App with MySQL & Redis, the Cloud Foundry Way- Kenny Bastani, PivotalRedis Labs
 
March 29, 2016 Dr. Josiah Carlson talks about using Redis as a Time Series DB
March 29, 2016 Dr. Josiah Carlson talks about using Redis as a Time Series DBMarch 29, 2016 Dr. Josiah Carlson talks about using Redis as a Time Series DB
March 29, 2016 Dr. Josiah Carlson talks about using Redis as a Time Series DBJosiah Carlson
 
Redis High availability and fault tolerance in a multitenant environment
Redis High availability and fault tolerance in a multitenant environmentRedis High availability and fault tolerance in a multitenant environment
Redis High availability and fault tolerance in a multitenant environmentIccha Sethi
 
Benchmarking Redis by itself and versus other NoSQL databases
Benchmarking Redis by itself and versus other NoSQL databasesBenchmarking Redis by itself and versus other NoSQL databases
Benchmarking Redis by itself and versus other NoSQL databasesItamar Haber
 
Postgres & Redis Sitting in a Tree- Rimas Silkaitis, Heroku
Postgres & Redis Sitting in a Tree- Rimas Silkaitis, HerokuPostgres & Redis Sitting in a Tree- Rimas Silkaitis, Heroku
Postgres & Redis Sitting in a Tree- Rimas Silkaitis, HerokuRedis Labs
 
Leveraging Probabilistic Data Structures for Real Time Analytics with Redis M...
Leveraging Probabilistic Data Structures for Real Time Analytics with Redis M...Leveraging Probabilistic Data Structures for Real Time Analytics with Redis M...
Leveraging Probabilistic Data Structures for Real Time Analytics with Redis M...Itamar Haber
 

Destacado (20)

Redis Developers Day 2015 - Secondary Indexes and State of Lua
Redis Developers Day 2015 - Secondary Indexes and State of LuaRedis Developers Day 2015 - Secondary Indexes and State of Lua
Redis Developers Day 2015 - Secondary Indexes and State of Lua
 
Build a Geospatial App with Redis 3.2- Andrew Bass, Sean Yesmunt, Sergio Prad...
Build a Geospatial App with Redis 3.2- Andrew Bass, Sean Yesmunt, Sergio Prad...Build a Geospatial App with Redis 3.2- Andrew Bass, Sean Yesmunt, Sergio Prad...
Build a Geospatial App with Redis 3.2- Andrew Bass, Sean Yesmunt, Sergio Prad...
 
Use Redis in Odd and Unusual Ways
Use Redis in Odd and Unusual WaysUse Redis in Odd and Unusual Ways
Use Redis in Odd and Unusual Ways
 
Get more than a cache back! The Microsoft Azure Redis Cache (NDC Oslo)
Get more than a cache back! The Microsoft Azure Redis Cache (NDC Oslo)Get more than a cache back! The Microsoft Azure Redis Cache (NDC Oslo)
Get more than a cache back! The Microsoft Azure Redis Cache (NDC Oslo)
 
UV logic using redis bitmap
UV logic using redis bitmapUV logic using redis bitmap
UV logic using redis bitmap
 
RespClient - Minimal Redis Client for PowerShell
RespClient - Minimal Redis Client for PowerShellRespClient - Minimal Redis Client for PowerShell
RespClient - Minimal Redis Client for PowerShell
 
HIgh Performance Redis- Tague Griffith, GoPro
HIgh Performance Redis- Tague Griffith, GoProHIgh Performance Redis- Tague Griffith, GoPro
HIgh Performance Redis- Tague Griffith, GoPro
 
Troubleshooting Redis- DaeMyung Kang, Kakao
Troubleshooting Redis- DaeMyung Kang, KakaoTroubleshooting Redis- DaeMyung Kang, Kakao
Troubleshooting Redis- DaeMyung Kang, Kakao
 
RedisConf 2016 talk - The Redis API: Simple, Composable, Powerful
RedisConf 2016 talk - The Redis API: Simple, Composable, PowerfulRedisConf 2016 talk - The Redis API: Simple, Composable, Powerful
RedisConf 2016 talk - The Redis API: Simple, Composable, Powerful
 
Using Redis as Distributed Cache for ASP.NET apps - Peter Kellner, 73rd Stre...
 Using Redis as Distributed Cache for ASP.NET apps - Peter Kellner, 73rd Stre... Using Redis as Distributed Cache for ASP.NET apps - Peter Kellner, 73rd Stre...
Using Redis as Distributed Cache for ASP.NET apps - Peter Kellner, 73rd Stre...
 
Scalable Streaming Data Pipelines with Redis
Scalable Streaming Data Pipelines with RedisScalable Streaming Data Pipelines with Redis
Scalable Streaming Data Pipelines with Redis
 
Cloud Foundry for Data Science
Cloud Foundry for Data ScienceCloud Foundry for Data Science
Cloud Foundry for Data Science
 
Redis & MongoDB: Stop Big Data Indigestion Before It Starts
Redis & MongoDB: Stop Big Data Indigestion Before It StartsRedis & MongoDB: Stop Big Data Indigestion Before It Starts
Redis & MongoDB: Stop Big Data Indigestion Before It Starts
 
Back your App with MySQL & Redis, the Cloud Foundry Way- Kenny Bastani, Pivotal
Back your App with MySQL & Redis, the Cloud Foundry Way- Kenny Bastani, PivotalBack your App with MySQL & Redis, the Cloud Foundry Way- Kenny Bastani, Pivotal
Back your App with MySQL & Redis, the Cloud Foundry Way- Kenny Bastani, Pivotal
 
March 29, 2016 Dr. Josiah Carlson talks about using Redis as a Time Series DB
March 29, 2016 Dr. Josiah Carlson talks about using Redis as a Time Series DBMarch 29, 2016 Dr. Josiah Carlson talks about using Redis as a Time Series DB
March 29, 2016 Dr. Josiah Carlson talks about using Redis as a Time Series DB
 
Redis High availability and fault tolerance in a multitenant environment
Redis High availability and fault tolerance in a multitenant environmentRedis High availability and fault tolerance in a multitenant environment
Redis High availability and fault tolerance in a multitenant environment
 
Benchmarking Redis by itself and versus other NoSQL databases
Benchmarking Redis by itself and versus other NoSQL databasesBenchmarking Redis by itself and versus other NoSQL databases
Benchmarking Redis by itself and versus other NoSQL databases
 
Postgres & Redis Sitting in a Tree- Rimas Silkaitis, Heroku
Postgres & Redis Sitting in a Tree- Rimas Silkaitis, HerokuPostgres & Redis Sitting in a Tree- Rimas Silkaitis, Heroku
Postgres & Redis Sitting in a Tree- Rimas Silkaitis, Heroku
 
Leveraging Probabilistic Data Structures for Real Time Analytics with Redis M...
Leveraging Probabilistic Data Structures for Real Time Analytics with Redis M...Leveraging Probabilistic Data Structures for Real Time Analytics with Redis M...
Leveraging Probabilistic Data Structures for Real Time Analytics with Redis M...
 
Redis acc 2015_eng
Redis acc 2015_engRedis acc 2015_eng
Redis acc 2015_eng
 

Similar a Getting Started with Redis

quickguide-einnovator-10-redis-admin
quickguide-einnovator-10-redis-adminquickguide-einnovator-10-redis-admin
quickguide-einnovator-10-redis-adminjorgesimao71
 
Cloud Foundry and OpenStack
Cloud Foundry and OpenStackCloud Foundry and OpenStack
Cloud Foundry and OpenStackvadimspivak
 
Redispresentation apac2012
Redispresentation apac2012Redispresentation apac2012
Redispresentation apac2012Ankur Gupta
 
Redis for Security Data : SecurityScorecard JVM Redis Usage
Redis for Security Data : SecurityScorecard JVM Redis UsageRedis for Security Data : SecurityScorecard JVM Redis Usage
Redis for Security Data : SecurityScorecard JVM Redis UsageTimothy Spann
 
Upgrading to Dell PowerEdge R750 servers featuring Dell PowerEdge RAID Contro...
Upgrading to Dell PowerEdge R750 servers featuring Dell PowerEdge RAID Contro...Upgrading to Dell PowerEdge R750 servers featuring Dell PowerEdge RAID Contro...
Upgrading to Dell PowerEdge R750 servers featuring Dell PowerEdge RAID Contro...Principled Technologies
 
Redis学习笔记
Redis学习笔记Redis学习笔记
Redis学习笔记yongboy
 
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...Codemotion
 
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...Codemotion
 
DellEMC_DSS7000_RedHat_Ceph_Performance_SizingGuide_WhitePaper.pdf
DellEMC_DSS7000_RedHat_Ceph_Performance_SizingGuide_WhitePaper.pdfDellEMC_DSS7000_RedHat_Ceph_Performance_SizingGuide_WhitePaper.pdf
DellEMC_DSS7000_RedHat_Ceph_Performance_SizingGuide_WhitePaper.pdfhellobank1
 
DellEMC_DSS7000_RedHat_Ceph_Performance_SizingGuide_WhitePaper.pdf
DellEMC_DSS7000_RedHat_Ceph_Performance_SizingGuide_WhitePaper.pdfDellEMC_DSS7000_RedHat_Ceph_Performance_SizingGuide_WhitePaper.pdf
DellEMC_DSS7000_RedHat_Ceph_Performance_SizingGuide_WhitePaper.pdfhellobank1
 
Redis学习笔记
Redis学习笔记Redis学习笔记
Redis学习笔记锐 张
 
Introduction to JumpStart
Introduction to JumpStartIntroduction to JumpStart
Introduction to JumpStartScott McDermott
 
VDCF Overview
VDCF OverviewVDCF Overview
VDCF OverviewJomaSoft
 
DataStax | DSE: Bring Your Own Spark (with Enterprise Security) (Artem Aliev)...
DataStax | DSE: Bring Your Own Spark (with Enterprise Security) (Artem Aliev)...DataStax | DSE: Bring Your Own Spark (with Enterprise Security) (Artem Aliev)...
DataStax | DSE: Bring Your Own Spark (with Enterprise Security) (Artem Aliev)...DataStax
 
Ceph Day Shanghai - Hyper Converged PLCloud with Ceph
Ceph Day Shanghai - Hyper Converged PLCloud with Ceph Ceph Day Shanghai - Hyper Converged PLCloud with Ceph
Ceph Day Shanghai - Hyper Converged PLCloud with Ceph Ceph Community
 
CISCO - Presentation at Hortonworks Booth - Strata 2014
CISCO - Presentation at Hortonworks Booth - Strata 2014CISCO - Presentation at Hortonworks Booth - Strata 2014
CISCO - Presentation at Hortonworks Booth - Strata 2014Hortonworks
 
GOTO 2013: Why Zalando trusts in PostgreSQL
GOTO 2013: Why Zalando trusts in PostgreSQLGOTO 2013: Why Zalando trusts in PostgreSQL
GOTO 2013: Why Zalando trusts in PostgreSQLHenning Jacobs
 
Scylla Summit 2022: ScyllaDB Rust Driver: One Driver to Rule Them All
Scylla Summit 2022: ScyllaDB Rust Driver: One Driver to Rule Them AllScylla Summit 2022: ScyllaDB Rust Driver: One Driver to Rule Them All
Scylla Summit 2022: ScyllaDB Rust Driver: One Driver to Rule Them AllScyllaDB
 

Similar a Getting Started with Redis (20)

quickguide-einnovator-10-redis-admin
quickguide-einnovator-10-redis-adminquickguide-einnovator-10-redis-admin
quickguide-einnovator-10-redis-admin
 
Cloud Foundry and OpenStack
Cloud Foundry and OpenStackCloud Foundry and OpenStack
Cloud Foundry and OpenStack
 
Redispresentation apac2012
Redispresentation apac2012Redispresentation apac2012
Redispresentation apac2012
 
Redis for Security Data : SecurityScorecard JVM Redis Usage
Redis for Security Data : SecurityScorecard JVM Redis UsageRedis for Security Data : SecurityScorecard JVM Redis Usage
Redis for Security Data : SecurityScorecard JVM Redis Usage
 
Upgrading to Dell PowerEdge R750 servers featuring Dell PowerEdge RAID Contro...
Upgrading to Dell PowerEdge R750 servers featuring Dell PowerEdge RAID Contro...Upgrading to Dell PowerEdge R750 servers featuring Dell PowerEdge RAID Contro...
Upgrading to Dell PowerEdge R750 servers featuring Dell PowerEdge RAID Contro...
 
Mule caching strategy with redis cache
Mule caching strategy with redis cacheMule caching strategy with redis cache
Mule caching strategy with redis cache
 
redis-demo.pptx
redis-demo.pptxredis-demo.pptx
redis-demo.pptx
 
Redis学习笔记
Redis学习笔记Redis学习笔记
Redis学习笔记
 
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
 
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
 
DellEMC_DSS7000_RedHat_Ceph_Performance_SizingGuide_WhitePaper.pdf
DellEMC_DSS7000_RedHat_Ceph_Performance_SizingGuide_WhitePaper.pdfDellEMC_DSS7000_RedHat_Ceph_Performance_SizingGuide_WhitePaper.pdf
DellEMC_DSS7000_RedHat_Ceph_Performance_SizingGuide_WhitePaper.pdf
 
DellEMC_DSS7000_RedHat_Ceph_Performance_SizingGuide_WhitePaper.pdf
DellEMC_DSS7000_RedHat_Ceph_Performance_SizingGuide_WhitePaper.pdfDellEMC_DSS7000_RedHat_Ceph_Performance_SizingGuide_WhitePaper.pdf
DellEMC_DSS7000_RedHat_Ceph_Performance_SizingGuide_WhitePaper.pdf
 
Redis学习笔记
Redis学习笔记Redis学习笔记
Redis学习笔记
 
Introduction to JumpStart
Introduction to JumpStartIntroduction to JumpStart
Introduction to JumpStart
 
VDCF Overview
VDCF OverviewVDCF Overview
VDCF Overview
 
DataStax | DSE: Bring Your Own Spark (with Enterprise Security) (Artem Aliev)...
DataStax | DSE: Bring Your Own Spark (with Enterprise Security) (Artem Aliev)...DataStax | DSE: Bring Your Own Spark (with Enterprise Security) (Artem Aliev)...
DataStax | DSE: Bring Your Own Spark (with Enterprise Security) (Artem Aliev)...
 
Ceph Day Shanghai - Hyper Converged PLCloud with Ceph
Ceph Day Shanghai - Hyper Converged PLCloud with Ceph Ceph Day Shanghai - Hyper Converged PLCloud with Ceph
Ceph Day Shanghai - Hyper Converged PLCloud with Ceph
 
CISCO - Presentation at Hortonworks Booth - Strata 2014
CISCO - Presentation at Hortonworks Booth - Strata 2014CISCO - Presentation at Hortonworks Booth - Strata 2014
CISCO - Presentation at Hortonworks Booth - Strata 2014
 
GOTO 2013: Why Zalando trusts in PostgreSQL
GOTO 2013: Why Zalando trusts in PostgreSQLGOTO 2013: Why Zalando trusts in PostgreSQL
GOTO 2013: Why Zalando trusts in PostgreSQL
 
Scylla Summit 2022: ScyllaDB Rust Driver: One Driver to Rule Them All
Scylla Summit 2022: ScyllaDB Rust Driver: One Driver to Rule Them AllScylla Summit 2022: ScyllaDB Rust Driver: One Driver to Rule Them All
Scylla Summit 2022: ScyllaDB Rust Driver: One Driver to Rule Them All
 

Último

Decoding Patterns: Customer Churn Prediction Data Analysis Project
Decoding Patterns: Customer Churn Prediction Data Analysis ProjectDecoding Patterns: Customer Churn Prediction Data Analysis Project
Decoding Patterns: Customer Churn Prediction Data Analysis ProjectBoston Institute of Analytics
 
Minimizing AI Hallucinations/Confabulations and the Path towards AGI with Exa...
Minimizing AI Hallucinations/Confabulations and the Path towards AGI with Exa...Minimizing AI Hallucinations/Confabulations and the Path towards AGI with Exa...
Minimizing AI Hallucinations/Confabulations and the Path towards AGI with Exa...Thomas Poetter
 
Data Analysis Project : Targeting the Right Customers, Presentation on Bank M...
Data Analysis Project : Targeting the Right Customers, Presentation on Bank M...Data Analysis Project : Targeting the Right Customers, Presentation on Bank M...
Data Analysis Project : Targeting the Right Customers, Presentation on Bank M...Boston Institute of Analytics
 
Networking Case Study prepared by teacher.pptx
Networking Case Study prepared by teacher.pptxNetworking Case Study prepared by teacher.pptx
Networking Case Study prepared by teacher.pptxHimangsuNath
 
Real-Time AI Streaming - AI Max Princeton
Real-Time AI  Streaming - AI Max PrincetonReal-Time AI  Streaming - AI Max Princeton
Real-Time AI Streaming - AI Max PrincetonTimothy Spann
 
Semantic Shed - Squashing and Squeezing.pptx
Semantic Shed - Squashing and Squeezing.pptxSemantic Shed - Squashing and Squeezing.pptx
Semantic Shed - Squashing and Squeezing.pptxMike Bennett
 
What To Do For World Nature Conservation Day by Slidesgo.pptx
What To Do For World Nature Conservation Day by Slidesgo.pptxWhat To Do For World Nature Conservation Day by Slidesgo.pptx
What To Do For World Nature Conservation Day by Slidesgo.pptxSimranPal17
 
Bank Loan Approval Analysis: A Comprehensive Data Analysis Project
Bank Loan Approval Analysis: A Comprehensive Data Analysis ProjectBank Loan Approval Analysis: A Comprehensive Data Analysis Project
Bank Loan Approval Analysis: A Comprehensive Data Analysis ProjectBoston Institute of Analytics
 
World Economic Forum Metaverse Ecosystem By Utpal Chakraborty.pdf
World Economic Forum Metaverse Ecosystem By Utpal Chakraborty.pdfWorld Economic Forum Metaverse Ecosystem By Utpal Chakraborty.pdf
World Economic Forum Metaverse Ecosystem By Utpal Chakraborty.pdfsimulationsindia
 
English-8-Q4-W3-Synthesizing-Essential-Information-From-Various-Sources-1.pdf
English-8-Q4-W3-Synthesizing-Essential-Information-From-Various-Sources-1.pdfEnglish-8-Q4-W3-Synthesizing-Essential-Information-From-Various-Sources-1.pdf
English-8-Q4-W3-Synthesizing-Essential-Information-From-Various-Sources-1.pdfblazblazml
 
Cyber awareness ppt on the recorded data
Cyber awareness ppt on the recorded dataCyber awareness ppt on the recorded data
Cyber awareness ppt on the recorded dataTecnoIncentive
 
Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...Seán Kennedy
 
Data Factory in Microsoft Fabric (MsBIP #82)
Data Factory in Microsoft Fabric (MsBIP #82)Data Factory in Microsoft Fabric (MsBIP #82)
Data Factory in Microsoft Fabric (MsBIP #82)Cathrine Wilhelmsen
 
6 Tips for Interpretable Topic Models _ by Nicha Ruchirawat _ Towards Data Sc...
6 Tips for Interpretable Topic Models _ by Nicha Ruchirawat _ Towards Data Sc...6 Tips for Interpretable Topic Models _ by Nicha Ruchirawat _ Towards Data Sc...
6 Tips for Interpretable Topic Models _ by Nicha Ruchirawat _ Towards Data Sc...Dr Arash Najmaei ( Phd., MBA, BSc)
 
why-transparency-and-traceability-are-essential-for-sustainable-supply-chains...
why-transparency-and-traceability-are-essential-for-sustainable-supply-chains...why-transparency-and-traceability-are-essential-for-sustainable-supply-chains...
why-transparency-and-traceability-are-essential-for-sustainable-supply-chains...Jack Cole
 
Student profile product demonstration on grades, ability, well-being and mind...
Student profile product demonstration on grades, ability, well-being and mind...Student profile product demonstration on grades, ability, well-being and mind...
Student profile product demonstration on grades, ability, well-being and mind...Seán Kennedy
 
Decoding Movie Sentiments: Analyzing Reviews with Data Analysis model
Decoding Movie Sentiments: Analyzing Reviews with Data Analysis modelDecoding Movie Sentiments: Analyzing Reviews with Data Analysis model
Decoding Movie Sentiments: Analyzing Reviews with Data Analysis modelBoston Institute of Analytics
 
FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024
FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024
FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024Susanna-Assunta Sansone
 
IBEF report on the Insurance market in India
IBEF report on the Insurance market in IndiaIBEF report on the Insurance market in India
IBEF report on the Insurance market in IndiaManalVerma4
 

Último (20)

Decoding Patterns: Customer Churn Prediction Data Analysis Project
Decoding Patterns: Customer Churn Prediction Data Analysis ProjectDecoding Patterns: Customer Churn Prediction Data Analysis Project
Decoding Patterns: Customer Churn Prediction Data Analysis Project
 
Minimizing AI Hallucinations/Confabulations and the Path towards AGI with Exa...
Minimizing AI Hallucinations/Confabulations and the Path towards AGI with Exa...Minimizing AI Hallucinations/Confabulations and the Path towards AGI with Exa...
Minimizing AI Hallucinations/Confabulations and the Path towards AGI with Exa...
 
Data Analysis Project : Targeting the Right Customers, Presentation on Bank M...
Data Analysis Project : Targeting the Right Customers, Presentation on Bank M...Data Analysis Project : Targeting the Right Customers, Presentation on Bank M...
Data Analysis Project : Targeting the Right Customers, Presentation on Bank M...
 
Networking Case Study prepared by teacher.pptx
Networking Case Study prepared by teacher.pptxNetworking Case Study prepared by teacher.pptx
Networking Case Study prepared by teacher.pptx
 
Real-Time AI Streaming - AI Max Princeton
Real-Time AI  Streaming - AI Max PrincetonReal-Time AI  Streaming - AI Max Princeton
Real-Time AI Streaming - AI Max Princeton
 
Semantic Shed - Squashing and Squeezing.pptx
Semantic Shed - Squashing and Squeezing.pptxSemantic Shed - Squashing and Squeezing.pptx
Semantic Shed - Squashing and Squeezing.pptx
 
Data Analysis Project: Stroke Prediction
Data Analysis Project: Stroke PredictionData Analysis Project: Stroke Prediction
Data Analysis Project: Stroke Prediction
 
What To Do For World Nature Conservation Day by Slidesgo.pptx
What To Do For World Nature Conservation Day by Slidesgo.pptxWhat To Do For World Nature Conservation Day by Slidesgo.pptx
What To Do For World Nature Conservation Day by Slidesgo.pptx
 
Bank Loan Approval Analysis: A Comprehensive Data Analysis Project
Bank Loan Approval Analysis: A Comprehensive Data Analysis ProjectBank Loan Approval Analysis: A Comprehensive Data Analysis Project
Bank Loan Approval Analysis: A Comprehensive Data Analysis Project
 
World Economic Forum Metaverse Ecosystem By Utpal Chakraborty.pdf
World Economic Forum Metaverse Ecosystem By Utpal Chakraborty.pdfWorld Economic Forum Metaverse Ecosystem By Utpal Chakraborty.pdf
World Economic Forum Metaverse Ecosystem By Utpal Chakraborty.pdf
 
English-8-Q4-W3-Synthesizing-Essential-Information-From-Various-Sources-1.pdf
English-8-Q4-W3-Synthesizing-Essential-Information-From-Various-Sources-1.pdfEnglish-8-Q4-W3-Synthesizing-Essential-Information-From-Various-Sources-1.pdf
English-8-Q4-W3-Synthesizing-Essential-Information-From-Various-Sources-1.pdf
 
Cyber awareness ppt on the recorded data
Cyber awareness ppt on the recorded dataCyber awareness ppt on the recorded data
Cyber awareness ppt on the recorded data
 
Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...
 
Data Factory in Microsoft Fabric (MsBIP #82)
Data Factory in Microsoft Fabric (MsBIP #82)Data Factory in Microsoft Fabric (MsBIP #82)
Data Factory in Microsoft Fabric (MsBIP #82)
 
6 Tips for Interpretable Topic Models _ by Nicha Ruchirawat _ Towards Data Sc...
6 Tips for Interpretable Topic Models _ by Nicha Ruchirawat _ Towards Data Sc...6 Tips for Interpretable Topic Models _ by Nicha Ruchirawat _ Towards Data Sc...
6 Tips for Interpretable Topic Models _ by Nicha Ruchirawat _ Towards Data Sc...
 
why-transparency-and-traceability-are-essential-for-sustainable-supply-chains...
why-transparency-and-traceability-are-essential-for-sustainable-supply-chains...why-transparency-and-traceability-are-essential-for-sustainable-supply-chains...
why-transparency-and-traceability-are-essential-for-sustainable-supply-chains...
 
Student profile product demonstration on grades, ability, well-being and mind...
Student profile product demonstration on grades, ability, well-being and mind...Student profile product demonstration on grades, ability, well-being and mind...
Student profile product demonstration on grades, ability, well-being and mind...
 
Decoding Movie Sentiments: Analyzing Reviews with Data Analysis model
Decoding Movie Sentiments: Analyzing Reviews with Data Analysis modelDecoding Movie Sentiments: Analyzing Reviews with Data Analysis model
Decoding Movie Sentiments: Analyzing Reviews with Data Analysis model
 
FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024
FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024
FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024
 
IBEF report on the Insurance market in India
IBEF report on the Insurance market in IndiaIBEF report on the Insurance market in India
IBEF report on the Insurance market in India
 

Getting Started with Redis

  • 1. Getting Started with Redis Toronto Pivotal User Group Syed Faisal Akber VMware, Inc. 2014-08-20 S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 1 / 37
  • 2. 1 Overview of Redis 2 Building and Installing Redis 3 Starting Redis 4 Data Structures 5 Programming with Redis 6 Basics of Administration 7 Advanced Topics 8 Conclusions S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 2 / 37
  • 3. Overview of Redis The word Redis means REmote DIctionary Server It is an advanced key-value store or a data structure store Runs entirely in memory All data is kept in memory Quick data access since it is maintained in memory Data can be backed up to disk periodically Single threaded server Extensible via Lua scripts Able to replicate data between servers Clustering also available S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 3 / 37
  • 4. Building and Installing Redis Install from source Download from http://redis.io/download Download the Stable release # tar -xvzf redis-2.8.13.tar.gz # cd redis-2.8.13 # make # make test # make PREFIX=/path/to/install/directory install Packages for Mac OS X are available via Brew Pivotal Redis repository has a prebuilt package for RedHat S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 4 / 37
  • 5. Starting Redis Starting the Redis server use the redis-server binary Once the server starts, you can connect to it using your programs or the command-line utility redis-cli The default port that Redis will use is 6379 and listens on all interfaces The Redis server will look for the configuration file in the current directory S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 5 / 37
  • 6. Data Structures Strings Lists Sets Ordered Sets Hashes S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 6 / 37
  • 7. Strings I For each key, the value is a binary safe string Simplest data structure 127.0.0.1:6379> set key "value of possible values" OK 127.0.0.1:6379> get key "value of possible values" 127.0.0.1:6379> del key (integer) 1 127.0.0.1:6379> get key (nil) Numeric operations S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 7 / 37
  • 8. Strings II Set the value to a number and perform numeric operations 127.0.0.1:6379> set counter1 0 OK 127.0.0.1:6379> set counter2 4 OK 127.0.0.1:6379> INCRBY counter2 5 (integer) 9 127.0.0.1:6379> INCR counter1 (integer) 1 127.0.0.1:6379> decr counter2 (integer) 8 127.0.0.1:6379> mget counter1 counter2 1) "1" S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 8 / 37
  • 9. Strings III 2) "8" Bit fields Set and perform bit-wise operations on strings 127.0.0.1:6379> setbit field0 5 1 (integer) 0 127.0.0.1:6379> get field0 "x04" 127.0.0.1:6379> setbit field1 4 1 (integer) 0 127.0.0.1:6379> setbit field1 5 1 (integer) 0 127.0.0.1:6379> bitop AND afields field0 field1 (integer) 1 S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 9 / 37
  • 10. Strings IV 127.0.0.1:6379> bitop OR ofields field0 field1 (integer) 1 127.0.0.1:6379> get afields "x04" 127.0.0.1:6379> get ofields "x0c" S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 10 / 37
  • 11. Lists I Lists keep track of a number of items under the same key Can be used as a stack 127.0.0.1:6379> lpush list 1 2 3 (integer) 3 127.0.0.1:6379> lpush list 4 (integer) 4 127.0.0.1:6379> llen list (integer) 4 127.0.0.1:6379> lset list 2 0 OK 127.0.0.1:6379> lpop list "4" S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 11 / 37
  • 12. Lists II 127.0.0.1:6379> llen list (integer) 3 S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 12 / 37
  • 13. Sets A set is a collection of items Does not allow duplicates Mathematical set operations work here 127.0.0.1:6379> sadd set0 5 4 3 2 1 (integer) 5 127.0.0.1:6379> sadd set1 4 5 6 7 8 (integer) 5 127.0.0.1:6379> sinter set0 set1 1) "4" 2) "5" S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 13 / 37
  • 14. Ordered Sets Ordered sets are similar to normal sets but retain sorting/order Set members carry a score to indicate user-defined sorting order 127.0.0.1:6379> zadd newset 6 a 2 b 4 c 4 d 1 e 6 f (integer) 6 127.0.0.1:6379> zrange newset 0 6 1) "e" 2) "b" 3) "c" 4) "d" 5) "a" 6) "f" S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 14 / 37
  • 15. Hashes I Each key can have subkeys (called fields) with its own values Consider a structure in C struct users{ char *name; int uid;} To store this in Redis use the HSET command S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 15 / 37
  • 16. Hashes II 127.0.0.1:6379> HSET users:rose name "Rose Tyler" (integer) 1 127.0.0.1:6379> HSET users:rose uid 1 (integer) 1 127.0.0.1:6379> HGETALL users:rose 1) "name" 2) "Rose Tyler" 3) "uid" 4) "1" 127.0.0.1:6379> HKEYS users:rose 1) "name" 2) "uid" S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 16 / 37
  • 17. Message Passing A publish/subscribe mechanism is present for broadcasting messages It is lightweight and easy to use Servers broadcast messages to channels Clients subscribe to channels of interest S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 17 / 37
  • 18. Programming with Redis There are many “clients” or drivers available Most are very mature They include: C Common Lisp Java Perl Prolog Python Ruby S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 18 / 37
  • 19. Perl One of several Perl clients, the recommended client is Redis from CPAN my $redis = Redis->new( server=’redis.example.com:8080’, name=’my_connection_name’); $redis->get(’key’); $redis->set(’key’ => ’value’); S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 19 / 37
  • 20. Python Install the driver using pip import redis redis = redis.Redis(host=’redis.example.com’, port=8080, db=0) redis.sadd(’team1’, ’player:mike’, ’player:jane’, ’player:joe’) S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 20 / 37
  • 21. Java The recommended client is Jedis Jedis jedis = new Jedis("redis.example.com"); jedis.set("foo", "bar"); String value = jedis.get("foo"); Use it as a Maven dependency or download the jar <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.4.2</version> <type>jar</type> <scope>compile</scope> </dependency> S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 21 / 37
  • 22. Basics of Administration I Ensure enough memory and other resources are available for Redis Setup the configuration file (start with sample) Configure network bind addresses Configure how often to write to disk Configure Operating System Increase the file descriptor limit if there’s a large number of connections Add vm.overcommit memory = 1 to /etc/sysctl.conf to prevent failure of background saves under low memory connections Configure start-up scripts Configure backup jobs S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 22 / 37
  • 23. Running Redis in a Virtual Machine Configure the Memory Reservation to be 100% of the Allocated Memory Ensure enough disk space is allocated to Virtual Machine Resource Pools should have adequate resources allocated S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 23 / 37
  • 24. Advanced Topics Below are some topics to research afterwards Replication Backups Sentinel Extensibility via Lua scripts Transactions S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 24 / 37
  • 25. Replication Automatically have all of the data replicated to remote servers Use replication for redundancy S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 25 / 37
  • 26. Backups Disable disk writing on primary servers to improve performance Take backups of secondary servers Use either append-only files or the snapshot mechanism Employ third-party backup software to protect save files S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 26 / 37
  • 27. Sentinel Sentinel utility to make Redis servers Highly Available Features include: Monitoring Notification Automatic Failover Configuration provider Uses Master/Slave topology Slaves are in read-only mode S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 27 / 37
  • 28. Scripting with Lua Small lightweight scripting platform Lua is similar to BASIC Allows for extensibility of Redis Offload processing to Redis for performance Analogous to RDBMS stored procedures S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 28 / 37
  • 29. Transactions and Pipelining Redis allows for transaction based operations for atomicity Commands can be pipelined to improve performance Pipelining can be used within transactions S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 29 / 37
  • 30. Conclusions Redis is a memory based datastore Redis is FAST It can store data in different structures Programming with Redis is easy Flexible administration options Redis has some neat features S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 30 / 37
  • 31. Acknowledgements Salvatore Sanfilippo – Pivotal Pieter Noordhuis – Pivotal Dan Buchko – Pivotal Luke Shannon – Pivotal Matt Stancliff – Pivotal S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 31 / 37
  • 32. References I Seguin, Karl. The Little Redis Book http://openmymind.net/redis.pdf Macedo, Tiago and Fred Oliveira. 2011. Redis Cookbook O’Reilly Media, Sebastopol, U.S.A. Redis Web-Site http://redis.io/ Redis Documentation http://redis.io/documentation Redis Download http://redis.io/download S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 32 / 37
  • 33. References II Redis Documentation http://redis.io/documentation Redis Commands http://redis.io/commands redissentinel Redis Sentinel Documentation http://redis.io/topics/sentinel The Programming Language Lua http://www.lua.org/ S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 33 / 37
  • 34. References III Salihefendic, Amir. 2010. Redis – The Hacker’s Database (Google Tech Talk Video) http://youtu.be/1BS3UVSLX-I Virtual Machine Memory http://vmw.re/1BBkstW Redis CPAN http://search.cpan.org/~melo/Redis-1.961/lib/ Jedis Repository https://github.com/xetorthio/jedis S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 34 / 37
  • 35. References IV Redmond, Eric and Jim R. Wilson. 2012. Seven Databases in Seven Weeks: A Guide to Modern Databases and the NoSQL Movement Pragmatic Bookshelf. RestMQ – Redis based message queue http://restmq.com/ S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 35 / 37
  • 36. Questions? S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 36 / 37
  • 37. Contact Information E-mail: fakber@vmware.com Twitter: @vCoreDump S. F. Akber (VMware, Inc.) Getting Started with Redis 2014-08-20 37 / 37