Enterprise customers are increasingly embracing the cloud and selecting Database-as-a-service (DBaaS) because it provides agility, simplifies operations, and allows them to scale. In Stack Overflow’s 2020 Developer Survey, Redis was named the most loved database for the fourth consecutive year for developers building modern applications. Each of the major cloud providers today offers its own Redis managed database service, with those versions based on the open source Redis. There are several reasons why enterprise customers look to graduate from open source Redis to Redis Enterprise Cloud. In this blog, I lay out the top five critical decision factors that developers and architects must consider to ensure they have the ultimate Redis experience to power their business critical applications.
If you’re looking for a cost-effective, fully managed Database-as-a-Service (DBaaS) fully hosted in the public cloud—or even in your own virtual private cloud (VPC)—Redis Enterprise Cloud is a powerful solution. Managed by Redis experts, Redis Enterprise Cloud runs your Redis dataset in a highly available and scalable manner, with predictable and stable top performance. It manages most of the administration of your deployment automatically, so you don’t need to worry about management and operations of your database. That frees you to concentrate on delivering business value to your customers.
Redis Enterprise Cloud is a fully managed service for running your Redis dataset. Your dataset is constantly replicated, so if a failure happens, an auto-failover mechanism guarantees data is served without interruption. Capabilities like Redis on Flash (RoF) offer enterprise developers the unique ability to work with large Redis databases at significant cost savings.
Redis Enterprise Cloud is based on the proven Redis Enterprise technology, which serves the thousands of customers of our Redis Enterprise software products. Redis Enterprise can be deployed as a fully managed DBaaS over Amazon Web Services (AWS), Microsoft Azure, or Google Cloud; as a managed Kubernetes service over Amazon Elastic Kubernetes Service (EKS), Azure Kubernetes Service (AKS), and Google Kubernetes Engine (GKE); as software on bare-metal, virtual machines, Red Hat OpenShift Container Platform, or Pivotal Kubernetes Service (PKS); or in a hybrid model to preserve operational flexibility and avoid vendor lock-in. With Redis Enterprise Cloud, you can deploy quickly on major public clouds and create Redis databases that are fully compatible with open source Redis clients.
Of course, Redis Enterprise Cloud is not the only DBaaS option. If you search for the leading DBaaS platforms, you will find that within AWS, for example, many database services are either fully or partially managed and can be connected to many other AWS services or external resources. Some of these databases have achieved widespread adoption and are used for caching, session management, gaming leaderboards, and geospatial applications.
Amazon ElastiCache is perhaps the best-known example. A popular third-party Redis-as-a-Service offering from AWS, ElastiCache enables you to deploy and run Memcached or Redis protocol-compliant server nodes in the cloud. It is a managed caching service based on open source Redis.
With that in mind, let’s look at the top reasons to migrate from Amazon ElastiCache to Redis Enterprise Cloud.
A multi-tenant DBaaS resembles an apartment, while a single-tenant DBaaS is like a single-family house. If you’re staying in an apartment, you have your own space in the building but you share walls with other residents. This arrangement provides significant cost savings, and makes it faster and easier to secure a lease and move in.
Redis Enterprise Cloud is Redis Enterprise’s multi-tenant service, offering software multi-tenancy in which a single subscription to Redis Enterprise Cloud serves hundreds of tenants. Each tenant has its own Redis database endpoint, which is completely isolated from the other Redis databases. You can host multiple dedicated databases in one plan, each running in a dedicated process and in a non-blocking manner. When you deploy Redis Enterprise in your data center, private cloud or a virtual private cloud, you benefit from the scope economies of the multi-tenant architecture. With a single Redis Enterprise cluster of a few nodes, you can support your development and testing efforts and then take it to production. (Learn more about Multi-tenancy in Redis Enterprise.)
Amazon ElastiCache is a purely single-tenant system. It uses open source Redis and follows a method where you deploy Redis as a container or a virtual appliance and allow the underlying management solution to spawn a new Redis instance. Multi-tenancy is achieved at the server/infrastructure layer. These solutions are priced per Redis instance. The effects of scale and scope economies benefit these service providers more than you.
Compared to deploying a DBMS on-premises, DBaaS offers your organization significant financial, operational, and strategic benefits. One essential benefit is extensibility. Enterprises must deliver their applications with speed and robustness to match their customers’ high expectations. The ability to provide sub-millisecond response times, reliably support the demands of any size enterprise, and scale seamlessly to handle millions of requests per second are critical to modern application development. At the same time, technology solutions need to be more open and flexible to handle cloud-native architectures while meeting uptime and reliability SLAs for mission-critical applications.
Redis modules are add-ons to Redis that extend Redis to cover a wide variety of popular use cases. They plug seamlessly into Redis, are processed in-memory, and leverage Redis’ simplicity, super-high performance, scalability, and high availability. Redis modules can be created by anyone, but Redis Enterprise Cloud supports Redis Labs-developed modules including RediSearch, RedisBloom, and RedisTimeSeries, which provide new data structures that further enable use cases like data analytics and machine learning.
With modules, Redis Enterprise Cloud eliminates the need to operate and maintain specialty databases for every use case. Redis Enterprise incorporates ten data structures and several purpose-built modules to provide best-in-class performance across use cases. Additionally, RedisGears, a serverless in-database engine, supports transactions and trigger-based events across both Redis core and Redis modules with sub-millisecond latency.
Amazon ElastiCache, on the other hand, lacks support for Redis Enterprise modules like RediSearch, RedisGraph, RedisTimeSeries, RedisBloom, and RedisJSON. These powerful and versatile modules are available only with Redis Enterprise.
Modern applications must provide instant responses to users regardless of their location. Enterprises need a DBaaS that can efficiently replicate the database between cloud regions and even different cloud providers. Additionally, building and deploying high-performing globally distributed applications can be challenging. Redis Enterprise’s CRDTs-based Active-Active technology delivers local latency for read and write operations regardless of the number of geo-replicated regions and their distance from each other, with built-in conflict resolution. It ensures business continuity even if the majority of replicas are down.
Redis Enterprise Cloud is the only DBaaS that supports Active-Active Geo-Distribution. It allows you to place your Redis database cluster instances close to where your users are, no matter where they are. It delivers guaranteed local latencies for both read and write operations, utilizing consensus-free protocols to maintain consistency. It provides a strong eventual consistency that effortlessly delivers converging consistent views of the data.
On the other hand, ElastiCache supports only Active-Passive multi-region replication. It doesn’t support Active-Active multi-region replication nor Active-Active multi-cloud replication.
Applications today must process terabytes or even petabytes of structured or unstructured data and return responses at the speed of business. As crucial business decisions become automated, insights from your data have to be extracted in minutes or hours, while traditional batch tools need days or weeks. There are performance and cost challenges associated with this. You need the high throughput and low latencies of an in-memory database while handling billions of data points per second. Redis on Flash (RoF) technology comes to the rescue by enhancing Redis to run on a combination of fast but relatively expensive DRAM and slightly slower but more cost-effective Flash memory.
Redis on Flash offers users of Redis Enterprise Cloud the unique ability to have very large Redis databases at significant cost savings. Where standard Redis databases must all be in DRAM, Redis on Flash enables your Redis databases to span both DRAM and dedicated Flash memory (SSD). Whilst keys are always stored in DRAM, RoF intelligently manages the location of their values (DRAM vs. Flash) in the database via a LRU-based (least-recently-used) mechanism. Hot values are stored in DRAM, while infrequently used, or warm, values are ejected to Flash memory. This enables you to work with much larger datasets with close to DRAM latency and performance, but at dramatically lower cost.
Redis on Flash is available only with Redis Enterprise and Redis Enterprise Cloud. It is neither available nor supported by ElastiCache.
Enterprises demand freedom of choice. A truly useful data platform must be able to run on any cloud platform and work with replicated data across the cloud as well as on-premises data centers. Multi-cloud environments are expected to become much more common for a number of different reasons. Some enterprises will turn to a variety of specialized clouds to run specific workloads better, faster, and more cost effectively, and improved tooling will make it easier to manage these heterogeneous environments. Other companies will work with multiple cloud vendors as a backup option or to mitigate vendor lock-in concerns. Still others will inherit multiple clouds as a fall-out from mergers and acquisitions of companies with divergent technology stacks.
Redis Enterprise works on all the clouds to preserve operational flexibility. Redis Enterprise can be provided as a managed service or as software to run on your own cloud infrastructure—no matter which clouds you use. Running Redis Enterprise as a managed service is the fastest way to deploy Redis Enterprise and get immediate time to value. Redis Enterprise is available via many cloud vendor marketplaces, including the AWS Marketplace, Microsoft Azure Marketplace, and Google Cloud Marketplace.
Making the move to Redis Enterprise Cloud
As more and more companies become software-centric businesses, they are adopting cloud-native strategies designed to deliver the innovative real-time experiences that today’s online customers demand. Increasingly, businesses realize that to get the full benefit from a cloud-native initiative, it must include hybrid cloud and multi-cloud approaches that can offer access to the latest technologies, help control costs, and avoid vendor lock-in.
Redis Enterprise Cloud is perfectly suited to power the modern cloud-native data layer. Redis Enterprise Cloud’s high availability, robust resilience, best-in-class performance with linear scalability, and purpose-built modules enable it to underpin today’s globally distributed applications.
Ready to get started with Redis Enterprise Cloud? Click below to start your journey today: