Amazon ElastiCache makes it easy to deploy, operate, and scale an in-memory cache for web applications running in the AWS cloud. Customers can now take advantage of the managed caching service to operate Redis in the cloud where Amazon ElastiCache handles the complexity of creating, scaling and managing an in-memory store enabling developers to focus on differentiated workloads. This presentation will provide an overview of the new Amazon ElastiCache for Redis service, discuss popular use cases for Redis, and share best practices that will help you fully leverage ElastiCache for Redis in your high performance architecture.
2. Dimensions for categorizing data stores
• Persistence
– In Memory vs Strongly Durable
• Data Model
– Key Value vs Document Model vs Relational
• Scalability
– None vs Scale up vs Scale out
3. Redis is a popular key-value store
• High speed, in-memory, key-value data store
• Optional durability (persistence via snapshot or
append only file)
• Supports pub/sub functionality
4. Redis is a popular key-value store
• Supports advanced data structures (in addition
to strings)
– Lists of strings
– Sets of strings (collection of non-repeating unsorted elements)
– Sorted Sets (collections of non-repeating elements ordered by
a floating-point number called score)
– Hashes where keys and values are strings
6. Introducing ElastiCache for Redis
• Managed Redis
service
• Use existing clients
• Pay as you go
• Available in all
public AWS regions
at launch
7. Benefits of a managed service
Easy to
Deploy
Deploy master-
slave(s)
configuration with a
few button clicks or
API calls
Easy to
Migrate
Compatible with
Redis
Existing code will
work when you
update node end
points
Easy to
Administer
ElastiCache
automatically
replaces failed
nodes and patches
software as needed
CloudWatch
enables you to
monitor cache
performance
metrics
Easy to
Secure
Supports VPC and
Security Group
configurations
8. Key features
• All Redis commands supported except slave
and backup commands
• Redis version 2.6.13
• Ability to create Redis nodes inside VPC
environment
• Support for Lua scripting
• Support for pub/sub e.g. Resque
9. Key features
• Managed Redis experience
– Console, API, and CLI options to create and manage Redis nodes
– Monitoring and node replacement
– CloudWatch metrics
– Support several instance types at launch: t1.micro, m1.small, m1.medium, m1.large, m1.XL,
m2.XL, m2.2XL, m2.4XL, C1.XL
• Replication
– Master-slave(s) configuration
• High Availability
– Multi-AZ support
– Assisted failover: Console and API options to select best slave node for promotion to master
during failover event
• Backup and DR
– Ability to connect external slave to master for backup and DR
– Ability to seed an ElastiCache for Redis master node from external snapshot
10. Where is ElastiCache Redis used?
• Gaming
• Social
• Media & Entertainment
• Mobile
• Ad Tech
• Many more…
12. Design Patterns
• Cache
• Leaderboards
• High Speed Sorting
• Atomic Counters
• Queuing Systems
• Activity Streams
13. Some things to watch out for with Redis
• Whole dataset must fit in memory
• Soft Persistence
• Single Threaded
• Some datatypes cannot scale out
• No Transactions
24. Free tier: 750 hours of Micro Cache Node per
Month
Pay as little as $0.022 per hour thereafter
for a T1.micro node
You can get started for free
25. Amazon
ElastiCache for
Redis
Quick Review:
• Managed Redis service
• Support for Replication
• Easy migration
• Rich Use Cases
For More Information:
• ElastiCache for Redis Detail Page and Docs:
http://aws.amazon.com/documentation/elasticache/
• Getting Started:
http://docs.aws.amazon.com/AmazonElastiCache/latest/U
serGuide/GettingStarted.html
Any Questions?