Sunday 2 October 2022

Amazon Aurora Overview

 Amazon Aurora

Amazon Aurora is a MySQL- and PostgreSQL-compatible relational database built for the cloud, that combines the performance and availability of traditional enterprise databases with the simplicity and cost-effectiveness of open-source databases.

Amazon Aurora is a fully managed relational database engine that's compatible with MySQL and PostgreSQL. You can use the code, tools, and applications with Aurora that you use today with your existing MySQL and PostgreSQL databases. With some workloads, Aurora can deliver up to five times the throughput of MySQL and up to three times the throughput of PostgreSQL without requiring changes to most of your existing applications.

Aurora, which is a relational database, is built for the cloud, is compatible with MySQL and PostgreSQL, and combines the speed and reliability of high-end enterprise databases with the simplicity and cost-effectiveness of open-source databases.


When you build your first Aurora database, you start by opening the Amazon RDS Management Console. Next, you choose Aurora as the database engine, and then select the database instance type.

One innovation you may notice in Aurora is the log structured distributed storage layer. This method is significantly faster than other storage methods.


Aurora is structured in the same way other relational database engines are. It stores data in the form of tables, records, and fields.


Aurora automatically maintains six copies of your data across three Availability Zones and will automatically attempt to recover the database in a healthy Availability Zones with no data loss. You can create up to 15 read replicas that can serve read-only traffic and failover.


Let’s discuss a few of Aurora’s benefits.


Aurora is fully managed by Amazon RDS. You no longer need to worry about database management tasks such as hardware provisioning, software patching, setup, configuration, or backups. Aurora automatically backs up your database to Amazon S3, enabling granular point-in-time recovery.


Aurora is built for high performance and scalability. You can get five times the throughput of standard MySQL and three times the throughput of standard PostgreSQL databases with Amazon Aurora. This performance is on par with commercial databases, at a tenth of the cost.


Aurora provides multiple levels of security for your database, including isolation, encryption at rest, and encryption in transit.


Amazon Aurora Serverless is an on-demand, auto-scaling configuration for the MySQL-compatible edition of Aurora.  It was to designed to enable databases to run in the cloud without managing individual database instances.


As with Amazon Relational Database Service (Amazon RDS), the basic building block of Aurora is the database instance class. This determines the amount of memory, CPU, and I/O capabilities available to the database engine. Aurora supports two types of instances: memory-optimized and burstable performance. Memory-optimized instances are suitable for most Aurora databases. Burstable performance instances are best when your database may experience short-lived bursts of activity.



Aurora offers two database engines: MySQL and PostgreSQL. Once these choices are made, you can then begin loading data into your database.


Aurora can have up to 15 read replicas that can be used to improve response time for queries and provide enhanced performance as well as durability for database instances.


The Amazon Aurora Global Database is a feature available for Aurora MySQL that allows a single Aurora database to span multiple AWS Regions. Data is replicated with no impact on database performance. It enables fast local reads in each Region with typical latency of less than a second and provides disaster recovery from Region-wide outages.



There are four important considerations for security in Aurora databases.


First, its proximity to the internet. The best practice is to restrict access to your database by placing it in an Amazon Virtual Private Cloud, or VPC. There may be instances where you must accept requests from the internet. In this case, you must create an internet gateway.


Second, controlling access to the database instance. Security groups control access to a database instance. Amazon RDS can use three types of security groups: database, VPC, and EC2.


Aurora utilizes AWS Identity and Access Management, or IAM, to create and manage credentials. The same users and roles you have in IAM can also be used with Aurora. Aurora requires both authentication and permission to access tables and data. IAM policies assign permissions that determine who can manage database resources.


Third, securing communications to and from the database instance. This is known as data in transit. This is done by using HTTPS connections. These connections are encrypted using SSL.


Finally, protecting data in the database. Aurora uses the industry standard AES-256 bit encryption algorithm to encrypt the data and database snapshots while at rest.


No comments:

Post a Comment