Using AWS RDS vs AWS EC2

Using AWS RDS vs AWS EC2

When was the last time you had a McDonald’s burger?  You get few options to customize the sandwich. Most people just pick one from the menu and get the standard configuration: bun, lettuce, patty, cheese and pickle.

AWS RDS is like that tasty burger. RDS is Amazon’s Relational Database Service in AWS Cloud and with it, users get compute, OS, storage and a database all pre configured and ready to be used.

You want sauteed onions in your burger? Sorry, they are not on the menu. Similarly you can’t install software in an RDS instance. You get whatever OS and DB version that AWS provides.

You want a larger burger?. Sorry, size choices are rather limited. RDS allows you to grow your database size, but with some major limitations. For example, the largest MS SQL RDS instance used to be 4TB, and they recently increased the size to 16TB.

You love spicy Jalapenos the burger? Sorry, not happening. You want a specific service pack or fix in RDS? Sorry, you can’t. AWS controls all aspects of the RDS instance and so you have no control.

Production Workloads in AWS RDS

RDS was designed for express purpose of delivering lowest-common-denominator standardized database service. And it does a great job of that. Just like that fast food restaurant.

So when should enterprises consider RDS?

AWS RDS is perfect for those organizations who

  • Don’t want human operations for managing and patching systems
  • Don’t want expensive DBAs managing databases
  • Want their developers to focus on their software and connect directly to RDS to accelerate productivity. No time wasted for a DBA to provision a database and then use/test their software.

What does this mean for enterprises?

While RDS provides a lot of value, its data management falls short for most enterprises requirements. Enterprises place a very high value on data protection of mission critical applications, and should consider the following when evaluating RDS:

  • Backups of RDS is done automatically by AWS, but it offers limited data retention. Worse than that, RTO with these backups can be large because data has to be “restored” from backup format.
  • AWS also offers users the flexibility to take and manage RDS snapshots. However snapshots can be expensive.  You pay to store snapshots in S3, you pay to replicate snapshots and you pay to store snapshots at a remote location. Worst of all, recoveries can be lengthy; we have heard many complaints that restoring from RDS snapshots can take hours, even for a 50 GB database.
  • Enterprises often want to have backups and snapshots in a different AWS account outside of production. This provides air gap protection which is similar to offsite tape. Unfortunately, S3 encrypted replication between different AWS accounts with non-default EBS CMK (Customer Master Key) does not support incremental forever.  Instead, full images are replicated every time resulting in significantly increased bandwidth and storage costs.

Production Workloads On-Premises or in AWS EC2

Many enterprises are running database workloads in EC2 and might be wondering how they can leverage RDS. Can they use it for on-demand DR or on-demand test dev?

Theoretically, yes. But in practice, it is unusable.  Let’s look at why.

First, let’s assume that you are backing up your EC2 instances using a traditional backup product and the protected images are stored on either EBS (Elastic Block Storage) or S3 (object storage). In order to transfer the database data to RDS, traditional backup products like Veritas NetBackup or Commvault would restore a backup to a target server using agents. However RDS does not support installing or running an agent and so this model won’t work. So how does someone restore data to RDS?

A typical process (shown in Fig 1) would look like this:

1) Create or locate an AWS AMI with the right OS, patches, application binaries, agent / connector etc.

2) Provision an EC2 instance from that AMI.

3) Recover the data to this server.

4) Perform native database dumps to disk.

5) Load the data to RDS.

Using AWS RDS vs AWS EC2

This is simply not an easy, repeatable or scalable solution.

Actifio pioneered Data Virtualization technology purpose-built to leverage Cloud infrastructure. The result is a dramatic simplification of the entire data protection, access and management process:

1) Instant mount the backup to a vanilla windows or Linux EC2 instance.

2) Load the data from this mount point to RDS.

Using AWS RDS vs AWS EC2

The process is massively simplified and is up to 10x faster than traditional products like NBU or CVLT

Actifio can deliver upon RDS benefits without the limitations that RDS brings. Actifio enables users to get get instant recovery for all databases even those of 50+ TB in AWS with almost no extra storage expense. Here is how it works:

  1. In the Actifio GUI, users pick the point in time from which they want to recover the machine / database. They can also customize network and VPC settings.
  2. Actifio Sky software picks the right EC2 instance and recovers the entire machine by applying system state.
  3. Actifio Sky then initiates an instant mount of the database and brings up the database online, practically within minutes.

Thus on-demand DR of multi TB databases in AWS can take just a few minutes with almost no extra storage. Note that Actifio Sky is not “restoring” the multi TB dataset. It performs an instant mount of a backup image that is stored on EBS or S3.

These benefits extend beyond disaster recovery.  Many enterprises want to provide database copies to test dev teams. For example if a DevOps team needs 10 copies of production data for Dev, QA, UAT testing, Actifio enables users to provision 10 copies instantly for DevOps, simultaneously in a self-service manner without consuming any extra storage. So for example: if the production data set is 17 TB and DevOps team need 10 copies, you don’t need 170 TB of EBS storage in AWS. Users get those 10 “virtual” database copies straight off the backup image. In this example, we just saved 170 TB x $100/TB/month of SSD EBS storage = $17,000 per month. If it took 10 hours to create one copy, we just saved 100 hours to create copies. These same benefits extends to database refreshes which further saves time and enhances operational efficiency.

Backup software is typically viewed as an “insurance cost”, just in case…. It is never a strategic IT investment. Actifio pioneered the technology where Backup is not a destination, but just a starting point to manage point-in-time copies of all enterprise applications that can be then re-used to accelerate strategic business initiatives like application development, machine learning and reduce iterative improvement cycle times, in AWS. The ability to recover and provision virtual database clones “on-demand” radically increases the speed at which recoveries and/or test/dev can be completed by up to 10x and reduces the AWS infrastructure costs by up to 10x.

Backup now becomes the starting point for enterprises to deliver Data-as-a-Service and accelerate critical strategic initiatives. And that is a paradigm shift.

Enterprises can now run their databases in EC2 and Actifio can deliver truly scalable on-demand DR and virtual data provisioning for DevOps inside AWS using EBS or S3.

Since this is holiday season, it may be a good opportunity to put together a wish list to improve AWS RDS. If AWS would enable Actifio to deploy Actifio connectors to RDS, it would be a game changer for AWS RDS and the enterprise users. Every on-premises enterprise would be able to do the following:

  1. Provision Actifio Sky on-premises.
  2. Configure a local backup on-premises and replicate to AWS S3. For mission critical applications, replicate to Actifio Sky running in AWS using EBS.
  3. For on-demand DR or DevOps data provisioning, provision RDS with Actifio connector.
  4. With Actifio Sky in AWS, do instant mounts to RDS either from EBS or S3 directly(!!!) and bring up the database online.
  5. Enterprises now instantly use RDS for multiple use cases, including effective application migration. AWS can exponentially accelerate enterprise adoption of RDS. It’s a win-win for everybody.

For now, enterprises can rely on Actifio Sky to deliver on-demand DR and virtual database provisioning instantly using AWS EC2.

With Actifio, you can have your gourmet, customized burger at fast food prices. And, of course, it tastes incredible !!!

Learn How Actifio Modernizes Backup & DR in AWS Environments

Download the whitepaper