DOWNLOAD THE PRESENTATION TO SEE THE ANIMATIONS PROPERLY.
Amazon Aurora has been the fastest growing service in AWS history since 2016!
Amazon Aurora is a cloud relational database built from the ground up with a new, ingenious architecture. This video is part of a series.
Section 1.0 here on Amazon Aurora has 16 videos! Skip over the quizzes if you'd like. Amazon Aurora is the fastest growing Service in AWS history since September, 2016 & STILL IS TODAY 2/9/2019! I cover what makes Amazon Aurora so unique & perfect for analytics that must use a relational database. I describe how it came to be, its features, its business value, some comparisons between Amazon Aurora to Amazon RDS for MySQL (now supports PostgreSQL & there's also a Serverless version! I cover high performance & why/how it accomplishes that, a high-level view of Amazon Aurora's Architecture, its ability to scale both up & out, its high availability & durability & how that's achieved, how to secure it, & a few ways to take advantage of different pricing options. It also covers Database Storage & Input/Output (IO), backups, AWS' "Simple Monthly Calculator" (which has been updated since making this video), & how its pricing compares to SQL Server
Amazon Aurora Relational Database Built for the AWS Cloud, Version 1 Series
1. Amazon Aurora Deep Dive
Video 1.0: Amazon Aurora Overview
“An Introduction to a True Relational Database Paradigm Shift”
By Kim Schmidt
Amazon RDS
2. Section 1.1: What Is Amazon Aurora?
“An Introduction to a True Relational Database Paradigm Shift”
*Image courtesy of AWS properties
AND IT STILL IS TODAY, FEBRUARY 9, 2019!
4. Or, You Could Use Commodity Hardware & an Open-Source Database Engine…
5. Then, AWS Released Amazon Aurora
MySQL 5.6-Compatible
It has 5x the Performance Over Standard MySQL Running on the Same Hardware
It’s at least as available, durable and fault tolerant as Enterprise-class database engines
Highly Secure
Scales Up to Millions of Transactions / Minute
If You Need More Than That, You Can Add Up to 15 Read Replicas
Automatically Grows Storage Up to 64 TB!
And, it costs 1/10 the amount of the leading Enterprise database engines
6. Amazon Aurora: A New Era for RDBMS
Managed by Amazon RDS – So YOU Don’t Have To!
7. This Concludes
Section 1.1: What Is Amazon Aurora?
Coming Up Next is
Section 1.2: The Business Value of Amazon Aurora
10. Feature Parity with ANSI SQL
Amazon Aurora Microsoft SQL Server
Amazon Aurora Microsoft SQL Server
11. Amazon Web Services as a Business
In 2015, AWS for the first time revealed its
finances. Business Insider1 quotes that
AWS is on a $6B+ annual run rate,
making it the biggest cloud infrastructure
provider
1Business Insider
Gartner2 confirms that for the 5th consecutive year,
AWS is the overwhelming market share leader, with
over 10 times more cloud compute capacity in use than
the aggregate total of the other 14 cloud providers in
their “Magic Quadrant”
2Gartner
Gartner confirms AWS has the most diverse customer base
and the broadest range of use cases, including enterprise
mission-critical applications
Gartner also confirms that because AWS has a multi-year
competitive advantage over all its competitors, it’s been able
to attract over a thousand technology partners and
independent software vendors from popular vendors that
have licensed and packaged their software to run on AWS,
have integrated their software with AWS capabilities, or to
deliver add-on services all through the AWS Marketplace – the
largest “app store” in the world, surpassing Apple – but this is
a B2B app store
htttp://aws.amazon.com/marketplace
Most people choose a cloud provider based on their most
precious assets –innovation their data. To date, there are over
50 AWS Services and hundreds of features to support virtually
any big data workload, with new features release weekly. The
AWS Marketplace has over 290+ big data software solutions.
As a matter of fact, most other cloud companies follow AWS’s
lead in innovation
12. This Concludes
Section 1.2: The Business Value of
Amazon Aurora
Coming Up Next is
Section 1.3: What Makes Amazon Aurora
a Game-Changer?
13. W
Section 1.3: What Makes Amazon Aurora
a “Game-Changer”?
“A person or thing that dramatically changes the course, strategy, character, etc. of something”
Aurora: A New Dawn
14. Andy Jassy’s Vision and Challenge to His Data Team
*Image courtesy of AWS properties
They created a new, log-based storage system that scales out multi-tenant and optimized for database
workloads
Use a service-oriented, decoupled architecture!
Is built on AWS, for the cloud
Integrated with other AWS Services like EC2, S3, VPC, DynamoDB, and Route 53
It’s self-managed and self-healing
Highly performant
Very low priced
MySQL 5.6 Compatible
Migration is accomplished with a few clicks
15. This Concludes
Section 1.3: What Makes Amazon Aurora
a “Game-Changer?”
Coming Up Next is
Section 1.4: What Exactly Does “MySQL-
Compatible” Mean, and Why is This Important?
16. Section 1.4: What Exactly Does “MySQL-
Compatible” Mean, and Why is This Important?
VARIETY VALUEVELOCITYVOLUME
By Kim Schmidt
17. MySQL Unlocks New Types of Data Insights
MACHINE &
SENSOR DATA
• IoT
• Satellites
• Road / Air /
Sea Patterns
• Scientific
Monitoring
VIDEO &
IMAGE DATA
• Video
Surveillance
• Internet
Gaming
• Streaming
Video
(Netflix)
SOCIAL
DATA
• Tweets
• Comments
• Relationships
• Posts
• Likes
• Skype
INTERNET
DATA
• Websites
• News Sites
• Online
Banking
• Package
Tracking
LOG
DATA
• Event Logs
• Transaction
Logs
• Network Logs
• Security Logs
THIRD PARTY
DATA
• Geospatial
Data
• Demographic
Data
• Content
Delivery
Networks
Use the right database for the right kind of data to get the right analytical VALUE you need!
3EMC Digital Universe with Research & Analysis by IDC
18. Some Comparison between Amazon Aurora to Amazon RDS for MySQL
FEATURE AMAZON AURORA AMAZON RDS FOR
MYSQL
Read Scaling Supports up to 15 Replicas,
little impact on write
performance
Supports up to 5 Replicas,
impact on write performance
Failover Target Automatic failover, no data
loss
Replicas can be manually
promoted to the master
database instance, potential
data loss
MySQL Version Only MySQL 5.6 MySQL versions 5.1, 5.5,
5.6, and 5.7
MySQL Storage Engine Only Supports InnoDB
Storage. Tables from Other
Engines are Automatically
Converted
Supports both InnoDB and
MyISAM
Read Replicas with
Different Storage Engine
than Master Instance
MySQL (non-RDS) that
replicate with an Aurora
database cluster can only
use InnoDB
Read Replicas can use both
InnoDB and MyISAM
http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html
19. This Concludes
Section 1.4: What Exactly Does “MySQL-
Compatible” Mean, and Why is This Important?
Coming Up Next is
Section 1.5: Amazon Aurora’s High Performance
Overview
20. Section 1.5: Amazon Aurora’s High Performance
Overview
“Performance only matters if your database is up”
*Image courtesy of AWS properties
21. Amazon Aurora’s High Performance Overview - 1
5x the throughput of standard MySQL running on the same hardware
Throughput is comparable to commercial databases at 1/10 the cost without license constraints
Can achieve up to 5000,000 reads and 1000,000 writes / sec on the largest Amazon Aurora Instance
6 million inserts per minute, 30 million selects per minute!
Can be further scaled for read operations using Read Replicas than have < 10 ms latency to serve high-
volume application read traffic from multiple instances, increasing the aggregate throughput
Read Replicas share the underlying storage as the source instance, lowering costs and avoiding writes
at the replica nodes
This frees up processing power to serve read requests, lowering lag time oftentimes down to a single
digit ms
You can create up to 15 Read Replicas per Amazon Aurora cluster
22. Amazon Aurora’s High Performance Overview - 2
Parallel Read Ahead: Range selects, full table scans, table alterations, and index generation are now up
to 5x faster
Faster Index Build: Generation of indexes in now about 75% faster
NUMA-Aware Scheduling: When run on instances with more than 1 CPU chip, reads from the query
cache and the buffer cache are faster, improving overall throughput by up to 10%
https://aws.amazon.com/blogs/aws/
“With MySQL compatibility ‘on top’ of the unique, cloud-native Aurora
architecture underneath, we have a lot of room to innovate.” –Jeff Barr
https://aws.amazon.com/blogs/aws/amazo
n-aurora-update-parallel-read-ahead-faster-
indexing-numa-awareness/
23. Amazon Aurora’s High Performance Overview - 3
Load Balancing across replicas in the database cluster
Higher Availability by the ability to place multiple Aurora Replicas in distinct AZ’s & connect them via
the new endpoint
https://aws.amazon.com/blogs/aws/
https://aws.amazon.com/blogs/aws/new-
reader-endpoint-for-amazon-aurora-load-
balancing-higher-availability/
24. A High-Level View of Amazon Aurora’s Architecture
*Image courtesy of AWS properties
25. This Concludes
Section 1.5: Amazon Aurora’s High Performance
Overview
Coming Up Next is
Section 1.6: Amazon Aurora’s Scalability Overview
27. Amazon Aurora’s Scalability Overview
The minimum storage capacity for an Amazon Aurora cluster is 10 GB. Based on your
usage, your storage will automatically grow in 10 GB increments up to 64 TB with no
impact to database performance
Can scale compute resources allocated to your instance in the AWS Management
Console: Memory and CPU resources are modified by changing your database instance
class
Requested changes can be applied during your scheduled maintenance window or flag it
to “Apply Immediately”; either way there will be an availability impact for a few minutes
while the scaling operation is performed
Scale from an instance with 2 vCPUs with 15 GB memory to an instance with 32 vCPUs
and 244 GB memory
Add up to 15 low latency Read Replicas spread across 3 Availability Zones to further
scale read capacity
33. This Concludes
Section 1.6: Amazon Aurora’s Scalability Overview
Coming Up Next is
Section 1.7: Amazon Aurora’s
High Availability and Durability Overview
34. Section 1.6: Amazon Aurora’s High Availability
and Durability Overview
*Image courtesy of Alfresco’s SlideShare on Amazon Aurora, https://www.alfresco.com
By Kim Schmidt
35. Amazon Aurora’s High Availability & Durability - 1
Each 10 GB chunk of your database volume
is replicated six ways, across 3 AZ’s and
continually backed up to Amazon S3
You can create up to 15 read Replicas that
upon instance failure, the RDS Multi-AZ
technology automates failover to one of the
replicas
If a failure occurs and no Replicas have
been provisioned, Amazon RDS will attempt
to create a new Aurora instance
automatically
Amazon RDS continually monitors the
health of your Amazon Aurora database and
the underlying EC2 instance. If the
database fails, Amazon RDS will
automatically restart the database and
associated processes
*Part of the Image courtesy of Alfresco’s SlideShare on Amazon Aurora
36. Amazon Aurora’s High Availability & Durability - 2
Storage Node Availability / Durability:
Quorum system for read / write that’s
latency tolerant
The Quorum membership changes do not
stall writes
Peer-to-Peer gossip replication to fill in
holes
Continuous scrubbing of data blocks
Amazon Aurora’s backup capability enables
point-in-time recovery of your database
instance, to any second during your
established retention period, up to the last 5
minutes. Your automatic retention period
can be anywhere up to 35 days. Automated
backups are stored in Amazon S3, which is
designed for 99.999999999% durability.
These backups are automatic, incremental
and continuous, and have no impact on
database performance
37. Amazon Aurora’s High Availability & Durability - 3
Amazon Aurora’s storage is fault-
tolerant, transparently handling
the loss of up to 2 copies of data
without affecting database write
availability and up to 3 copies
without affecting read availability
Amazon Aurora has automatic
detection, replication & repair
Amazon Aurora isolates the
buffer cache from the database
process, allowing the cache to
survive a database restart in less
than 30 seconds, and with near
instant crash recovery
In the case of a crash, Amazon
Aurora will result in redo logs
being applied to each
segmentation on demand in
parallel, asynchronously *Image courtesy of AWS properties
38. Amazon Aurora’s High Availability & Durability - 4
*Image courtesy of AWS properties
39. This Concludes
Section 1.7: Amazon Aurora’s
High Availability and Durability Overview
Coming Up Next is
Section 1.8: Amazon Aurora’s Security Overview
41. Amazon Aurora’s Security Overview - 1
Network isolation via Amazon VPC by default
There is no direct access to the storage nodes
Encryption secures data at rest with AES-256 with hardware
acceleration
All blocks on the disk and the backups in Amazon S3 are
encrypted
Key management is via AWS Key Management Service (KMS)
Supports SSL to secure data in transit
Supports industry standard security and data protection
certifications
44. Amazon Aurora’s Security Overview - 4
AWS IAM
You should leverage Identity and Access Management (IAM)
permissions both at the resource-level and at the user-level (all
levels)
Use this to create granular control to your resources, users and
groups, so only specific actions can be taken at each level
A clear example would be to only allow Accounting and
Management to see the costs accrued for using Amazon Aurora
45. Amazon Aurora’s Security Overview - 5
Tagging all resources – AWS Services, Users, Groups, etc. is an AWS best practice
46. This Concludes
Section 1.8: Amazon Aurora’s Security Overview
Coming Up Next is
Section 1.9: Amazon Aurora is a
Fully-Managed AWS Service
48. The Benefits of Being an AWS Fully-Managed Service
HIGH
AVAILABILITY
SCALABILITY
OS INSTALLS
OS PATCHING
POWER
HVAC
NETWORK
RACKING
STACKING
MAINTENANCE
DB SW INSTALLS
DB SW PATCHES
DB BACKUPS
MANAGED BY AWS
APP
OPTIMIZATION
MANAGED BY YOU
49. This Concludes
Section 1.9: Amazon Aurora is a
Fully-Managed AWS Service
Coming Up Next is the last Section of 1.0,
Section 1.10: Amazon Aurora’s Low Cost
50. Section 1.10: Amazon Aurora’s Low Cost
No
Licenses
Needed
No
Up-Front
Commitment
No
Minimum
Fee
No
Need to
Over-
Provision
Storage
51. Amazon Aurora’s “On-Demand” Pricing - 1
When you see either of these 2 buttons, do you “just click” on them to launch your database instance?
If you do, you are launching a database instance with what is called “On-Demand” Pricing
On-Demand Instances give you the first of the 3 statements made on the previous slide:
You don’t need any software licenses
There’s no upfront commitment
There’s no minimum fee
(And of course, with Amazon Aurora, the 4th statement about not needing to over-provision storage still holds true)
On-Demand Instances let you pay by the hour, with no long-term commitments or upfront fees
It’s plain & simply “pay-as-you-go” by the hour
It’s ideal for development, testing, innovation, and other short-term workloads
52. Amazon Aurora’s “On-Demand” Pricing - 2
On-Demand Instance pricing applies to both Primary
Instances, used for read / write workloads, and Replicas
used to scale reads and enhance failover
Amazon RDS Multi-AZ technology is used to failover to
one of your Replicas if an outage occurs
The cost of Multi-AZ deployments is the cost of the
Primary Instance + the cost of each Replica
To maximize availability, it’s recommended placing at
least Replica in a different AZ from the Primary Instance
Pricing is based on Instance size & the Region your
instances are deployed in
As of September, 2016, pricing in the US East (N
Virginia) Region is shown in the image to the right
There isn’t much of a difference if you change your
Region from US East to US West, but you do start to see
a rise in pricing if you deploy in one of the many Asia
Pacific Regions, such as you see here now for Mumbai
53. Amazon Aurora’s “Reserved Instance” Pricing
Reserved Instances are appropriate for steady-state
database workloads
They cost ~45% less for 1-Year Reserved
Instances & ~66% less for 3-Year Reserved
Instances
You commit to the entire duration of the Reserved
Instance term and are billed for each hour regardless
of whether any usage occurred or not
Pricing again is based on Instance size and the
Region it’s deployed in
As an example, I chose to show “the middle of the
road” insofar as instance types go, a “db.r3.2xlarge”
Instance, in the US East (N Virginia) Region
You can see in the screenshot to the right, you have
3 payment options for 1-Year Reserved Instances:
“No Upfront”, “Partial Upfront”, or “All Upfront”.
For a 3-Year Reserved Instance, “No Upfront” is not
an option
You can also see the monthly price is reduced if you
do pay some money upfront
Doing the math, even without paying anything
upfront, there’s an hourly savings of $0.40, which
adds up fast!
56. Data Transfer “In” & “Out” of Amazon RDS
You’re also charged for data ‘in” or
“Ingress” & data “out” or “Egress”
Pricing again varies by Region & if data is
transferred “in” or “out”, & for “out”, where
to and how much data is transferred
In the screenshot to the right you’ll see
the charges as of September, 2016 for the
US East (N Virginia) Region
NOTE: Data transferred between Amazon
RDS and Amazon EC2 in the same AZ is
free, and so is data transferred between
AZ’s for replication of Multi-AZ
deployments
https://aws.amazon.com/rds/aurora/pricing/
58. Monthly Estimate for SQL Server Enterprise on a db.r3.3xlarge Instance
Notice the red rectangle shows the
database engine chosen is SQL
Server Enterprise (the only license
option is “Included” for this version)
Notice the orange highlighted
instance type, db.r3.2xlarge, the
smallest instance size possible
Notice the Storage size is 20 GB, the
smallest size for this type of database
instance
Everything else was left as defaults
In the purple rectangle, you’ll notice
the Estimate of your Monthly Bill is
$18,957.57
That would be an estimated annual
cost of $227, 490.84
59. Monthly Estimate for Amazon Aurora on a db.r3.3xlarge Instance
Notice the red rectangle shows the
database engine chosen is Amazon
Aurora
Notice the orange highlighted
instance type, db.r3.2xlarge, to
compare with the SQL Server
estimate equally
Notice the Storage size is 20 GB (the
smallest size for this type of database
instance is 5 GB)
Everything else was left as defaults
In the purple rectangle, you’ll notice
the Estimate of your Monthly Bill is
$15,317.65
That would be an estimated annual
cost of $183,811.80
That’s a monthly savings of
$3,639.92 and an annual savings of
$43,679.04, equaling a 20% savings
over SQL Server Enterprise
60. Monthly Estimate for SQL Server Enterprise on a db.r3.8xlarge Instance
Notice the red rectangle shows the
database engine chosen is SQL
Server Enterprise (the only license
option is “Included” for this version)
Notice the orange highlighted
instance type, db.r3.8xlarge, the
largest instance size possible
Notice the Storage size is 20 GB, the
smallest size for this type of database
instance
Everything else was left as defaults
In the purple rectangle, you’ll notice
the Estimate of your Monthly Bill is
$29,500.78
That would be an estimated annual
cost of $354,009.36
61. Monthly Estimate for Amazon Aurora on a db.r3.8xlarge Instance
Notice the red rectangle shows the
database engine chosen is Amazon
Aurora
Notice the orange highlighted
instance type, db.r3.8xlarge, to
compare with the SQL Server
estimate equally
Notice the Storage size is 20 GB (the
smallest size for this type of database
instance is 5 GB)
Everything else was left as defaults
In the purple rectangle, you’ll notice
the Estimate of your Monthly Bill is
$18,043.32
That would be an estimated annual
cost of $216,519.84
That’s a monthly savings of
$11,457.46 and an annual savings
of $137,980.94, equaling a 39%
savings over SQL Server Enterprise
62. This Concludes
Section 1.10: Amazon Aurora’s Low Cost
And the 1.0 Video “Amazon Aurora Overview”
Coming Up Next is
Section 2.0: Amazon Aurora’s Architecture,
In the Next Video
There’s a companion video of this entire presentation on YouTube at
https://youtu.be/Cnz6mSzca1Y - https://youtu.be/CCH0y1Y4a7U . Amazon Aurora Deep Dive
Section 1.0 has 16 video. You can skip over the “quizzes & final exam if you want
63. See you in the next Amazon Aurora Section 2.0 at https://youtu.be/qv9JzuhtIKQ !