AWS: Relational Database Service (RDS)
Vaibhav Kashyap
Software Architecture Enthusiast || Truth can only be found in one place: The Code
Welcome readers, together we’ve sailed through four sessions of AWS. I’m here again with the fifth session exploring Relational Database Service, commonly called RDS.
Let’s begin with the simple definition:
Amazon Relational Database Service (Amazon RDS) is a web service that makes it easier to set up, operate, and scale a relational database in the AWS Cloud. It provides cost-efficient, resizable capacity for an industry-standard relational database and manages common database administration tasks.
Decades have passed our systems have sailed relying on databases persisting occurring transactions. Designated operational tasks include taking backup of the databases, software updates, managing infrastructure. You always have to take a bullet to accomplish these tasks to keep the system functional & going. Sounds bit old fashioned right? Let me introduce you, your new helping hand, would perform all the above tasks for you. Relational Database Service (RDS), is a collection of AWS services for managed relational databases.
We call the databases managed because AWS takes care of all the backups, software updates, and infrastructure for the database. If you compare this to installing your own database on an EC2 instance, you would then be responsible for figuring out backups and redundancy, as well as updating the software with security patches.
With a managed database, there are even more conveniences like configuration options in the web console and the ability to simply create read replicas.
Currently, Amazon offers MySQL, PostgreSQL, SQL Server, MariaDB, Oracle, and Amazon's own Aurora database through RDS. Each carries a different price and different configuration and connection options. When picking a database type, you'll also pick the type of EC2 instance that it will be running on.
Honestly, if you want to use a relational database in AWS, I highly recommend finding an option in RDS. You may already be using a relational database that isn't available through RDS, but if you're moving to the cloud, then you should really consider switching if possible.
Having Amazon not only manages but guarantees the stability of your database, often crucial parts of any infrastructure, is such a huge benefit.
In its Managed Services, it includes taking snapshots of your data or increase the size of the EC2 instance being used to back the database. Doing either one of these actions with your own database would be much more difficult and dangerous.
Security is often one of the most important aspects of any database.
With RDS, access is controlled via those trusty security groups. By configuring the security group for your instantiated RDS database, you can allow your applications access to the database but block any other connections.
RDS pricing depends on the type of database you're using, as well as the region it's created in. Since the base resource that these databases are being installed on are EC2 instances, the price is higher if you're using a larger instance type.
Keep reading & stay tuned for upcoming sessions.