Elasticache Introduction
“Amazon ElastiCache allows you to seamlessly set up, run, and scale popular open-Source compatible in-memory data stores in the cloud. Build data-intensive apps or boost the performance of your existing databases by retrieving data from high throughput and low latency in-memory data stores.”
Umm.. okay?
Before we actually understand Elasticache, let’s look at what in memory databases are.
So traditionally a database stores data in a storage device like the Hard drive or SSD of the computer. Now, the difference between storage (HDD, SSD) and memory (RAM) is that RAM is volatile memory that gives very fast access and storage is non volatile and is slow to access. What this means is that fetching data from the database is slower than any data that is stored in memory. In memory database stores data in the memory (RAM) for faster Read/Writes.
You would of course not use in-memory databases as primary databases, since firstly, memory is expensive. 16GB of RAM would come for the price of a 500GB or maybe even a 1TB Hard drive. Secondly, they’re volatile. Once you switch off the system, all data is lost. In memory DBs are used for frequently accessed data such as leaderboards or even sessions, which if lost, can be recreated.
Amazon Elasticache is a service provided by AWS that lets you run in memory databases in the cloud. There are two main players in this space, Memcached and Redis, and both are supported by Elasticache.
That’s all for today folks. See you in a new episode of…AWS! Take care, stay safe! 👋