Amazon Web Services Database Services offer a fully managed and scalable database solution for your applications. Amazon offers a variety of database choices, which include Amazon RDS, Aurora, DynamoDB, ElasticCache, and Redshift.
In this blog, I will be covering various AWS database services including Amazon RDS; the first AWS database offering. We will also cover basic features, overviews, and use cases for each of these services.
- What is AWS Database Services?
- AWS Relational Database Service (RDS)
- Amazon DynamoDB
- Amazon ElastiCache
- Amazon Redshift
- Amazon Aurora
What is AWS Database Services
AWS offers a wide range of database options that you can choose for your applications. AWS database services mainly fall into two categories: Relational and non-relational.
- Amazon RDS – Aurora, Oracle, PostgreSQL, MySQL, MariaDB, SQL Server
- DynamoDB
- ElasticCache – Memcached, Redis
- Redshift
Learn With Us: Join our AWS Solution Architect Training and understand AWS basics in an easy way.
Amazon Relational Database Service (Amazon RDS)
Amazon RDS is an abbreviation for Amazon Relational Database Service. It makes it simple to set up, scale, and run relational databases on the cloud. It offers scalable and cost-effective capacity while performing database administration responsibilities, allowing you to focus on your business and applications. It supports six database engines: Amazon Aurora, MariaDB, MySQL, PostgreSQL, Microsoft SQL Server, and Oracle.
It provides a reliable and stable solution for real-time data management, and you always have analysis-ready data at your selected location. It enables you to spend time on critical business objectives and conduct meaningful analysis with your preferred BI tool.
Amazon Relational Database Service (Amazon RDS) makes it easy to spin up a database in the AWS cloud in just a few minutes. Amazon RDS is the most commonly used and managed database service that automates all the time-consuming administration tasks such as provisioning, setup, patching, and backups.
Amazon RDS provides six different relational database options:
- Amazon Aurora
- Oracle Database
- PostgreSQL
- MySQL
- MariaDB
- Microsoft SQL Server
Read More: About AWS Route 53.
Amazon RDS Use Cases
- Web and mobile applications
- E-Commerce applications
- Mobile and online games
Amazon RDS has two main features:
1. Multi-AZ Deployments
Amazon RDS Multi-Az deployments provide high availability and failover support. Amazon RDS allows you to have multiple copies of your database in multiple availability zones. Amazon RDS creates a synchronous standby replica of your DB instance in another Availability Zone and automatically switches or failover to a standby replica in another Availability Zone in case of a planned or unplanned outage if you have enabled Multi-AZ.
Multi-AZ is available for the following databases:
- SQL Server
- Oracle
- MySQL Server
- Postgre SQL
- MariaDB
Also Check : The difference between Azure DevOps Vs AWS DevOps
2. Read Replicas
Amazon RDS Read replicas offer the advantage of having a read-only copy of your database in the same or a separate area, minimizing latency. When the source database instance is changed, the modifications are asynchronously replicated to the read replica. Read replicas are most commonly employed for read-intensive database workloads.
Read Replicas are available for the following databases:
- MySQL Server
- PostgreSQL
- MariaDB
- Oracle
- Aurora
Check Out: Our previous blog post on AWS Cloud Certification Path. Click here
Amazon DynamoDB
DynamoDB is Amazon’s long-running NoSQL database solution since 2012. NoSQL databases originally refer to as “non-SQL” or “not only SQL” or “non-relational” databases. NoSQL is commonly used to handle big data – large volumes of unstructured or semi-structured data.
Amazon DynamoDB is a fast, fully managed NoSQL database service that supports flexible data models such as both document and key-value data models. It is used for all applications that need consistent, single-digit millisecond performance latency at any scale.
Amazon DynamoDB Use Cases
- Ad tech
- Gaming
- Consistent performance even when scaling
- Banking and Finance
- Applications with severe latency constraints and high data volumes.
- Software as a service (SaaS)
Check Out: AWS Cloudwatch vs Cloudtrail, to know the major differences between them.
Amazon ElastiCache
ElastiCache is AWS in-memory database solution that makes it easy to deploy, operate, and scale an in-memory cache in the cloud. It provides faster retrieval of information from fast, managed, in-memory caches instead of relying entirely on slower disk-based databases, thereby improving the performance of web applications.
Amazon ElastiCache offers two open-source in-memory cache database engines:
- Memcached: Simple and easy solution to start with, ideal for small and static data.
- Redis: It provides support for Multi-AZ, backup & restores, and persistence. It is ideal for more dense and complex data.
Let’s take a look at some basic differences between Memcached and Redis.
Amazon ElastiCache Use Cases
- Session stores
- Gaming
- Geospatial services
- Real-time analytics
Also Read: Our blog post on AWS CodePipeline Deploy. Click here
Amazon Redshift
An application for business intelligence that uses data warehousing is Amazon Redshift. It is a petabyte-scale data warehouse solution in the cloud that is quick and powerful and is completely managed. The setup, running, and scaling of a data warehouse are all handled by this service. Additionally, it handles all administrative duties such as allocating resources, keeping track of and backing up the cluster, and updating the Amazon Redshift engine.
An Amazon Redshift cluster is a set of nodes, which has one leader node and one or more compute nodes. Each cluster contains one or more databases and runs an Amazon Redshift engine. The type and number of compute nodes that you need depend on the size of your data, the number of queries you will execute, and the query execution performance that you need.
Read More: About AWS Elastic Load Balancers. Click here
Amazon Aurora
The managed relational database service offered by AWS is called Amazon Aurora. It is a relational database engine that boosts database speed and high availability and is compatible with MySQL and PostgreSQL. Serverless and multi-master versions of Aurora were just introduced by AWS, and either of these characteristics could be enough to convince someone to pick it.
At a far lower cost, Amazon Aurora offers databases with up to five times the performance of MySQL and three times the performance of PostgreSQL. Furthermore, cross-region read replicas are supported.
Aurora provides more reliability in terms of storage. Its database storage is separate from the instances. Aurora allows your data to be replicated in 6 storage nodes, each of 10GB chunks, distributed in 3 Availability Zones. For each Aurora database instance, you will have 6 copies of your data, two in each Availability Zone.
Amazon Aurora Use Cases
- Enterprise applications
- Software as a Service (SaaS) offerings
- Web and mobile gaming applications
Also Check: Our blog post on the AWS Database Migration Service. Click here
Frequently Asked Questions (FAQs)
By now, you must have a basic understanding of AWS database service and all of its database offerings and their features. Let’s take a look at some frequently asked questions, asked by trainees in our AWS Solutions Architect Associate Certification training.
What about database encryption on AWS?
Amazon RDS encrypts your databases using keys you manage with the AWS Key Management Service (KMS). On a database instance running with Amazon RDS encryption, data stored at rest in the underlying storage is encrypted, as are its automated backups, read replicas, and snapshots.
Can DynamoDB be used by applications running on any operating system?
Yes. DynamoDB is a fully managed cloud service that you access via API. Applications running on any operating system (such as Linux, Windows, iOS, Android, Solaris, AIX, and HP-UX) can use DynamoDB. We recommend using the AWS SDKs to get started with DynamoDB
What type of indexing is used in DynamoDB?
DynamoDB supports two types of secondary indexes: Global secondary index — An index with a partition key and a sort key that can be different from those on the base table. A global secondary index is considered “global” because queries on the index can span all of the data in the base table, across all partitions.
How does SNS work? Is this for SMS only?
Amazon SNS is used to send text messages, or SMS messages, to SMS-enabled devices. You can send a message directly to a phone number, or you can send a message to multiple phone numbers at once by subscribing those phone numbers to a topic and sending your message to the topic.
Related/References
- Overview of Amazon Web Services & Concepts
- How To Create AWS Free Tier Account
- AWS Certified Solutions Architect Associate SAA-C03
- AWS Certified Solutions Architect: Roles & Responsibilities
- AWS Certified Solution Architect Associate SAA-C03 Step By Step Activity Guides (Hands-On Labs)
- AWS EFS, EBS, and S3: Best AWS Storage Option
- AWS Free Tier Account Services
- AWS Trusted Advisor Best Practices
- AWS Certificate Manager (ACM): Overview, Features and How it Works?
Next Task For You
Begin your journey towards an AWS Cloud by joining our FREE Informative Class on Amazon Cloud Free Class by clicking on the below image.
Leave a Reply