Database | Amazon Aurora Flashcards
What is Amazon Aurora?
General
Amazon Aurora | Database
Amazon Aurora is a relational database engine that combines the speed and reliability of high-end commercial databases with the simplicity and cost-effectiveness of open source databases. Amazon Aurora MySQL delivers up to five times the performance of MySQL without requiring any changes to most MySQL applications; similarly, Amazon Aurora PostgreSQL delivers up to three times the performance of PostgreSQL. Amazon RDS manages your Amazon Aurora databases, handling time-consuming tasks such as provisioning, patching, backup, recovery, failure detection and repair. You pay a simple monthly charge for each Amazon Aurora database instance you use. There are no upfront costs or long-term commitments required.
What does “MySQL compatible” mean?
General
Amazon Aurora | Database
It means that most of the code, applications, drivers and tools you already use today with your MySQL databases can be used with Aurora with little or no change. The Amazon Aurora database engine is designed to be wire-compatible with MySQL 5.6 using the InnoDB storage engine. Certain MySQL features like the MyISAM storage engine are not available with Amazon Aurora.
What does “PostgreSQL compatible” mean?
General
Amazon Aurora | Database
It means that most of the code, applications, drivers and tools you already use today with your PostgreSQL databases can be used with Aurora with little or no change. The Amazon Aurora database engine is designed to be wire-compatible with PostgreSQL 9.6, and supports the same set of PostgreSQL extensions that are supported with RDS for PostgreSQL 9.6, making it easy to move applications between the two engines.
How do I try Amazon Aurora?
General
Amazon Aurora | Database
To try Amazon Aurora, sign in to the AWS console, select RDS under the Database category, and choose Amazon Aurora as your database engine.
How much does Amazon Aurora cost?
General
Amazon Aurora | Database
Please see our pricing page for current pricing information.
Amazon Aurora replicates each chunk of my database volume six ways across three Availability Zones. Does that mean that my effective storage price will be three or six times what is shown on the pricing page?
General
Amazon Aurora | Database
No. Amazon Aurora’s replication is bundled into the price. You are charged based on the storage your database consumes at the database layer, not the storage consumed in Amazon Aurora’s virtualized storage layer.
In which AWS regions is Amazon Aurora available?
General
Amazon Aurora | Database
Please see our pricing page for current information on regions and prices.
How can I migrate from MySQL to Amazon Aurora and vice versa?
General
Amazon Aurora | Database
You have several options. You can use the standard mysqldump utility to export data from MySQL and mysqlimport utility to import data to Amazon Aurora, and vice-versa. You can also use Amazon RDS’s DB Snapshot migration feature to migrate an RDS MySQL DB Snapshot to Amazon Aurora using the AWS Management Console. Migration completes for most customers in under an hour, though the duration depends on format and data set size. For more information see the Amazon Aurora Data Export and Import Guide.
How can I migrate from PostgreSQL to Amazon Aurora and vice versa?
General
Amazon Aurora | Database
You have several options. You can use the standard pg_dump utility to export data from PostgreSQL and pg_restore utility to import data to Amazon Aurora, and vice-versa. You can also use Amazon RDS’s DB Snapshot migration feature to migrate an RDS PostgreSQL 9.6 DB Snapshot to Amazon Aurora using the AWS Management Console. Migration completes for most customers in under an hour, though the duration depends on format and data set size. For more information see the Amazon Aurora Data Export and Import Guide.
Does Amazon Aurora participate in the AWS Free Tier?
General
Amazon Aurora | Database
Not at this time. The AWS Free Tier for Amazon RDS offers benefits for Micro DB Instances; Amazon Aurora does not currently offer Micro DB Instance support. Please see our pricing page for current pricing information.
What are IOs in Amazon Aurora and how are they calculated?
General
Amazon Aurora | Database
IOs are input/output operations performed by the Aurora database engine against its SSD-based virtualized storage layer. Every database page read operation counts as one IO. The Aurora database engine issues reads against the storage layer in order to fetch database pages not present in the buffer cache. Each database page is 16KB in Aurora MySQL and 8KB in Aurora PostgreSQL.
Aurora was designed to eliminate unnecessary IO operations in order to reduce costs and to ensure resources are available for serving read/write traffic. Write IOs are only consumed when pushing transaction log records to the storage layer for the purpose of making writes durable. Write IOs are counted in 4KB units. For example, a transaction log record that is 1024 bytes will count as one IO operation. However, concurrent write operations whose transaction log is less than 4KB can be batched together by the Aurora database engine in order to optimize I/O consumption. Unlike traditional database engines Amazon Aurora never pushes modified database pages to the storage layer, resulting in further IO consumption savings.
You can see how many IOs your Aurora instance is consuming by going to the AWS Console. To find your IO consumption, go to the RDS section of the console, look at your list of instances, select your Aurora instances, then look for the “Billed read operations” and “Billed write operations” metrics in the monitoring section.
Do I need to change client drivers to use Amazon Aurora PostgreSQL?
General
Amazon Aurora | Database
No, Amazon Aurora will work with standard PostgreSQL database drivers.
What is Amazon Aurora Serverless?
General
Amazon Aurora | Database
At re:Invent 2017, we announced the preview for Amazon Aurora Serverless, a new configuration of the MySQL-compatible edition that can save you valuable time, effort and cost by automatically scaling database capacity up and down to match your application needs.
How can I get started with Amazon Aurora Serverless?
Performance
Amazon Aurora | Database
Amazon Aurora Serverless is now available in Preview for the MySQL-compatible edition of Amazon Aurora. You can sign up to request participation. We will announce general availability at a future date.
What does “five times the performance of MySQL” mean?
Performance
Amazon Aurora | Database
Amazon Aurora delivers significant increases over MySQL performance by tightly integrating the database engine with an SSD-based virtualized storage layer purpose-built for database workloads, reducing writes to the storage system, minimizing lock contention and eliminating delays created by database process threads. Our tests with SysBench on r3.8xlarge instances show that Amazon Aurora delivers over 500,000 SELECTs/sec and 100,000 UPDATEs/sec, five times higher than MySQL running the same benchmark on the same hardware. Detailed instructions on this benchmark and how to replicate it yourself are provided in the Amazon Aurora MySQL Performance Benchmarking Guide.
What does “three times the performance of PostgreSQL” mean?
Performance
Amazon Aurora | Database
Amazon Aurora delivers significant increases over PostgreSQL performance by tightly integrating the database engine with an SSD-based virtualized storage layer purpose-built for database workloads, reducing writes to the storage system, minimizing lock contention and eliminating delays created by database process threads. Our tests with SysBench on r4.16xlarge instances show that Amazon Aurora delivers SELECTs/sec and UPDATEs/sec over three times higher than PostgreSQL running the same benchmark on the same hardware. Detailed instructions on this benchmark and how to replicate it yourself are provided in the Amazon Aurora PostgreSQL Performance Benchmarking Guide.
How do I optimize my database workload for Amazon Aurora MySQL?
Performance
Amazon Aurora | Database
Amazon Aurora is designed to be compatible with MySQL 5.6, so that existing MySQL applications and tools can run without requiring modification. However, one area where Amazon Aurora improves upon MySQL is with highly concurrent workloads. In order to maximize your workload’s throughput on Amazon Aurora, we recommend building your applications to drive a large number of concurrent queries and transactions.
How do I optimize my database workload for Amazon Aurora PostgreSQL?
Hardware and Scaling
Amazon Aurora | Database
Amazon Aurora is designed to be compatible with PostgreSQL 9.6, so that existing PostgreSQL applications and tools can run without requiring modification. However, one area where Amazon Aurora improves upon PostgreSQL is with highly concurrent workloads. In order to maximize your workload’s throughput on Amazon Aurora, we recommend building your applications to drive a large number of concurrent queries and transactions.
What are the minimum and maximum storage limits of an Amazon Aurora database?
Hardware and Scaling
Amazon Aurora | Database
The minimum storage is 10GB. Based on your database usage, your Amazon Aurora storage will automatically grow, up to 64 TB, in 10GB increments with no impact to database performance. There is no need to provision storage in advance.
How do I scale the compute resources associated with my Amazon Aurora DB Instance?
Backup and Restore
Amazon Aurora | Database
You can scale the compute resources allocated to your DB Instance in the AWS Management Console by selecting the desired DB Instance and clicking the Modify button. Memory and CPU resources are modified by changing your DB Instance class.
When you modify your DB Instance class, your requested changes will be applied during your specified maintenance window. Alternatively, you can use the “Apply Immediately” flag to apply your scaling requests immediately. Both of these options will have an availability impact for a few minutes as the scaling operation is performed. Bear in mind that any other pending system changes will also be applied.
How do I enable backups for my DB Instance?
Backup and Restore
Amazon Aurora | Database
Automated backups are always enabled on Amazon Aurora DB Instances. Backups do not impact database performance.
Can I take DB Snapshots and keep them around as long as I want?
Backup and Restore
Amazon Aurora | Database
Yes, and there is no performance impact when taking snapshots. Note that restoring data from DB Snapshots requires creating a new DB Instance.
If my database fails, what is my recovery path?
Backup and Restore
Amazon Aurora | Database
Amazon Aurora automatically maintains 6 copies of your data across 3 Availability Zones and will automatically attempt to recover your database in a healthy AZ with no data loss. In the unlikely event your data is unavailable within Amazon Aurora storage, you can restore from a DB Snapshot or perform a point-in-time restore operation to a new instance. Note that the latest restorable time for a point-in-time restore operation can be up to 5 minutes in the past.
What happens to my automated backups and DB Snapshots if I delete my DB Instance?
Backup and Restore
Amazon Aurora | Database
You can choose to create a final DB Snapshot when deleting your DB Instance. If you do, you can use this DB Snapshot to restore the deleted DB Instance at a later date. Amazon Aurora retains this final user-created DB Snapshot along with all other manually created DB Snapshots after the DB Instance is deleted. Only DB Snapshots are retained after the DB Instance is deleted (i.e., automated backups created for point-in-time restore are not kept).
Can I share my snapshots with another AWS account?
Backup and Restore
Amazon Aurora | Database
Yes. Aurora gives you the ability to create snapshots of your databases, which you can use later to restore a database. You can share a snapshot with a different AWS account, and the owner of the recipient account can use your snapshot to restore a DB that contains your data. You can even choose to make your snapshots public – that is, anybody can restore a DB containing your (public) data. You can use this feature to share data between your various environments (production, dev/test, staging, etc.) that have different AWS accounts, as well as keep backups of all your data secure in a separate account in case your main AWS account is ever compromised.
Will I be billed for shared snapshots?
Backup and Restore
Amazon Aurora | Database
There is no charge for sharing snapshots between accounts. However, you may be charged for the snapshots themselves, as well as any databases you restore from shared snapshots. Learn more about Aurora pricing.
Can I automatically share snapshots?
Backup and Restore
Amazon Aurora | Database
We do not support sharing automatic DB snapshots. To share an automatic snapshot, you must manually create a copy of the snapshot, and then share the copy.
How many accounts can I share snapshots with?
Backup and Restore
Amazon Aurora | Database
You may share manual snapshots with up to 20 AWS account IDs. If you want to share the snapshot with more than 20 accounts, you can either share the snapshot as public, or contact support for increasing your quota.
In which regions can I share my Aurora snapshots?
Backup and Restore
Amazon Aurora | Database
You can share your Aurora snapshots in all AWS regions where Aurora is available.
Can I share my Aurora snapshots across different regions?
Backup and Restore
Amazon Aurora | Database
No. Your shared Aurora snapshots will only be accessible by accounts in the same region as the account that shares them.