Amazon Database Solutions
Relational Database Solutions
NOTE: To move the on-premise database to cloud, AWS provides
lift-and-shift
migration, which helps to run the database in Amazon EC2.
Amazon Relational Database Service (Amazon RDS)
Amazon Relational Database Service (Amazon RDS) is a service that enables you to run relational databases in the AWS Cloud.
Amazon RDS is a managed service that automates tasks such as,
Hardware provisioning
Database setup
OS patching
Failover
Disaster recovery
Redundancy with replication
Backups and restore with point-in-time restore
Monitoring dashboard
Scalability
Amazon RDS provides a number of different security options. Many Amazon RDS database engines offer encryption at rest (protecting data while it is stored) and encryption in transit (protecting data while it is being sent and received).
Amazon RDS database engines
Amazon RDS is available on six database engines, which optimize for memory, performance, or input/output (I/O). Supported database engines include:
Aurora
Postgres
MySQL
MariaDB
Oracle
Microsoft SQL Server
IBM DB2
Amazon Aurora
Amazon Aurora is an enterprise-class relational database. It is compatible with MySQL and PostgreSQL relational databases.
It is up to five times faster than standard MySQL databases and up to three times faster than standard PostgreSQL databases.
Only costs 1/10th of commercial databases.
Amazon Aurora helps to reduce your database costs by reducing unnecessary input/output (I/O) operations, while ensuring that your database resources remain reliable and available.
Consider Amazon Aurora if your workloads require high availability. It replicates six copies of your data across three Availability Zones and continuously backs up your data to Amazon S3.
Can deploy up to 15 read replicas, in order to off-load the reads and scale.
Provides point-in-time recovery, to recover data from specific period.
Non-Relational Database Solutions
Amazon DynamoDB
Amazon DynamoDB is a key-value based, fully managed database service (NoSQL database). It delivers single-digit millisecond performance at any scale.
It is a serverless database, which means you do not have to provision, patch, or manage servers. Also, you do not have to install, maintain, or operate software.
As the size of your database shrinks or grows, it automatically scales to adjust for changes in capacity while maintaining consistent performance.
This makes it a suitable choice for use cases that require high performance while scaling.
Comparison between Amazon RDS and Amazon DynamoDB
Relational DBS
Yes, Schema based
No
Non Relational DBS
No
Yes, Schemaless i.e., key-value pair
Serverless
No
Yes
Data Warehouses
A solution for historical analytics of business data for Business Intelligence (BI) workloads.
Amazon RedShift
Amazon Redshift is a data warehousing service that you can use for big data analytics. It offers the ability to collect data from many sources and helps you to understand relationships and trends across your data i.e., BI.
Redshift nodes with multiple petabytes of data is common, and so you can imagine how scalable it is.
AWS Database Migration Service (Amazon DMS)
AWS Database Migration Service (AWS DMS) enables you to migrate existing relational databases, nonrelational databases, and other types of data stores. These databases can be on-premises or within the Amazon cloud such as AWS RDS or running on EC2 instances.
With AWS DMS, you move data between a source database and a target database. The source and target databases can be of the same type or different types. During the migration, your source database remains operational, reducing downtime for any applications that rely on the database.
If source and target databases are of same type i.e., Homogeneous type then, as schema structures, data types and database code is compatible amongst them, you just need to create a migration task with connections to source and target databases.
If source and target databases are not of same type i.e., Heterogeneous type then, we need a two step process.
Convert schemas to target type using AWS Schema conversion tools. This will convert source schema and database code to target database type.
Use DMS to migrate data from source database to target database.
DMS also allows you to do development and test database migrations, database consolidation, continuous database replication.
Development and test database migrations is used when developers wants to test against production data but without affecting production users. In this case we use DMS to migrate a copy of our production database to any development environment such DEV or QA, either once off or continuously.
Database consolidation is used when you have several databases and want to consolidate them to a single database.
Continuous database replication is used when we want to do continuous data replication in order to have a copy for disaster recovery or geographic separation.
Aditional AWS Database service
Amazon DocumentDB
Supports Mongodb service workloads.
Great at Content management, catalogue, user profiles
Amazon Neptune
Graph database
Great for social networking, fraud detection, recommendation engines
Amazon Quantum Ledger Database
An immutable ledger
Amazon Managed Blockchain
A service that you can use to create and manage blockchain networks with open-source frameworks.
Blockchain is a distributed ledger system that lets multiple parties run transactions and share data without a central authority.
Amazon ElastiCache
Database accelerators that adds caching layers on top of your database to help improve read times of common requests.
Supports both memcached and redis flavors.
Amazon DynamoDB Accelerator (DAX)
In-memmory cache, for non relational database.
It helps improve response times from single-digit milliseconds to microseconds.
Read more about aws databases here. Read more about aws DMS here.
Last updated