WavebreakmediaMicro - Fotolia
An efficient cache process uses algorithms to decide what data is important and how it is stored. Applications that use the data are usually designed to deploy some form of caching engine. Amazon ElastiCache supports two major open source in-memory caching engines: Memcached and Redis.
ElastiCache users typically select between the two caching engines, depending on the design of the corresponding application.
Memcached is a general-purpose distributed memory caching system for Linux, OS X and Windows. It's well suited for AWS' scalable, cluster-based cache node system, and it can be applied to many in-memory caching tasks, such as caching data objects from databases for busy websites. Memcached client libraries are available for many popular programming languages, such as PHP, Perl and Python. Developers typically choose the Memcached mode of ElastiCache when they want the simplest caching model that supports the largest multithreaded cache nodes and high scalability. ElastiCache currently supports Memcached 1.4.5, 1.4.14 and 1.4.24.
Redis is an open source, in-memory data store that is often applied with database and message broker workloads. But Redis is more complex and full featured than Memcached; it supports strings, hashes, sets, bitmaps, geospatial indexes and other high-end objects. Redis also supports replication, scripting, high availability and disk persistence. It's a caching engine that many developers choose to handle complex data types, perform in-memory sorting and use data protection capabilities, such as backup, restoration, replication and node failover. ElastiCache currently supports Redis 2.6.13, 2.8.6, 2.8.19, 2.8.21, 2.8.22, 2.8.23 and 2.8.24.
A developer can select the preferred version of Memcached or Redis to deploy when creating an ElastiCache cluster, ensuring the application has access to the latest caching features and functionality for the desired engine. Developers can upgrade caching engines after creating the cluster, but versions cannot be downgraded later.
Boost app performance with Amazon ElastiCache
Redis improves performance of database queries
Words to go: AWS storage
Dig Deeper on AWS database management
Related Q&A from Stephen J. Bigelow
Learn how load balancing in the cloud differs from a traditional network traffic distribution, and explore services available from AWS, Google and ... Continue Reading
Access management is critical to securing the cloud. Understand the differences between AWS IAM roles and users to properly restrict access to AWS ... Continue Reading
Containers have rapidly come into focus as a popular option for deploying applications, but they have limitations and are fundamentally different ... Continue Reading