Module 8: Databases Dynamo DB
Module objectives
After completing this module, you should be able to:
• Explain Amazon DynamoDB
• Identify the functionality in Amazon DynamoDB
• Explain Amazon Redshift
• Explain Amazon Aurora
• Perform tasks in an RDS database, such as launching, configuring, and interacting
2
Module 8: Databases
Section 2: Amazon DynamoDB
Relational versus non-relational databases
Relational (SQL) Non-Relational
Data Storage Rows and columns Key-value, document, graph
Schemas Fixed Dynamic
Focuses on collection of
Querying Uses SQL
documents
Scalability Vertical Horizontal
ISBN Title Author Format {
ISBN: 3111111223439,
Withering Jackson, Title: “Withering Depths”,
Example 3111111223439
Depths Mateo
Paperback
Author: ”Jackson, Mateo”,
Format: “Paperback”
Wang,
3122222223439 Wily Willy Ebook }
Xiulan
4
What is Amazon DynamoDB?
Fast and flexible NoSQL database service for any scale
• NoSQL database tables
• Virtually unlimited storage
• Items can have differing
attributes
Amazon DynamoDB • Low-latency queries
• Scalable read/write throughput
5
Amazon DynamoDB core components
• Tables, items, and attributes are the core DynamoDB components
• DynamoDB supports two different kinds of primary keys: Partition key and
partition and sort key
6
Partitioning
7
Items in a table must have a key
8
Amazon DynamoDB:
Section 2 key • Runs exclusively on SSDs.
takeaways • Supports document and key-value store models.
• Replicates your tables automatically across your
choice of AWS Regions.
• Works well for mobile, web, gaming, adtech, and
Internet of Things (IoT) applications.
• Is accessible via the console, the AWS CLI, and API
calls.
• Provides consistent, single-digit millisecond latency
at any scale.
• Has no limits on table size or throughput.
9
Module 8: Databases
Section 3: Amazon Redshift
Amazon Redshift
Amazon Redshift
11
Introduction to Amazon Redshift
12
Parallel processing architecture
SQL Clients/BI tools
Amazon Redshift
DC Leader node
DC
Dense compute
node DC DC DC Dense compute nodes
• Virtual Core
• RAM
• Local disk Amazon DynamoDB
Amazon S3
13
Automation and scaling
Manage
Monitor
Scale
14
Compatibility
15
Amazon Redshift use cases
• Enterprise data warehouse (EDW)
• Migrate at a pace that customers are comfortable with
• Experiment without large upfront cost or commitment
• Respond faster to business needs
• Big data
• Low price point for small customers
• Managed service for ease of deployment and maintenance
• Focus more on data and less on database management
16
Amazon Redshift use cases 2
• Software as a service (SaaS)
• Scale the data warehouse capacity as demand grows
• Add analytic functionality to applications
• Reduce hardware and software costs
17
Amazon Redshift features:
Section 3 key
• Fast, fully managed data warehouse
takeaways service
• Easily scale with no downtime
• Columnar storage and parallel
processing architectures
• Automatically and continuously
monitors cluster
• Encryption is built in
18
Module 8: Databases
Section 4: Amazon Aurora
Amazon Aurora
• Enterprise-class relational database
• Compatible with MySQL or PostgreSQL
• Automate time-consuming tasks (such as
provisioning, patching, backup, recovery,
Amazon Aurora failure detection, and repair).
20
Amazon Aurora service benefits
21
High availability
22
Resilient design
23
Amazon Aurora features:
Section 4 key
• High performance and scalability
takeaways
• High availability and durability
• Multiple levels of security
• Compatible with MySQL and
PostgreSQL
• Fully managed
24
The right tool for the right job
What are my requirements?
Enterprise-class relational database Amazon RDS
Fast and flexible NoSQL database service for any scale Amazon DynamoDB
Operating system access or application features that are Databases on Amazon
not supported by AWS database services EC2
Specific case-driven requirements (machine learning, data AWS purpose-built
warehouse, graphs) database services
25
Database case study activity 1
Case 1: A data protection and management company that provides services to enterprises. They must provide database services for
over 55 petabytes of data. They have two types of data that require a database solution. First, they need a relational database store for
configuration data. Second, they need a store for unstructured metadata to support a de-duplication service. After the data is de-
duplicated, it is stored in Amazon S3 for quick retrieval, and eventually moved to Amazon S3 Glacier for long-term storage. The
following diagram illustrates their architecture.
AWS Cloud
??? Metadata database
???
Configuration
Corporate
data center
database
Amazon EC2 Amazon Simple Storage Amazon Simple Storage
Service (Amazon S3) Service Glacier
26
Database case study activity 2
Case 2: A commercial shipping company that uses an on-premises legacy data management system. They must migrate
to a serverless ecosystem while they continue to use their existing database system, which is based on Oracle. They are
also in the process of decomposing their highly structured relational data into semistructured data. The following
diagram illustrates their architecture.
Database
???
AWS AppSync
AWS Lambda AWS Lambda
Corporate Oracle AWS Lambda
data database Amazon Simple
center Notification Service
(Amazon SNS)
27
Database case study activity 3
Case 3: An online payment processing company that processes over1 million transactions per day. They must provide
services to ecommerce customers who offer flash sales (sales that offer greatly reduced prices for a limited time), where
demand can increase by 30 times in a short time period. They use IAM and AWS KMS to authenticate transactions with
financial institutions. They need high throughput for these peak loads. The following diagram illustrates their
architecture.
AWS Cloud
Database
??? AWS Identity and Access
Management (IAM)
Elastic Load Balancing
Internet
Banks
AWS SDK
AWS Key Management
Read replicas Service (AWS KMS)
Amazon EC2
instances
28
Module 8: Databases
Module wrap-up
Module summary
In summary, in this module, you learned how to:
• Explain Amazon Relational Database Service (Amazon RDS)
• Identify the functionality in Amazon RDS
• Explain Amazon DynamoDB
• Identify the functionality in Amazon DynamoDB
• Explain Amazon Redshift
• Explain Amazon Aurora
• Perform tasks in an RDS database, such as launching, configuring, and interacting
30
Complete the knowledge check
31
Sample exam question
Which of the following is a fully-managed NoSQL database service?
A. Amazon Relational Database Service (Amazon RDS)
B. Amazon DynamoDB
C. Amazon Aurora
D. Amazon Redshift
32
Additional resources
• AWS Database page
• Amazon RDS page
• Overview of Amazon database services
• Getting started with AWS databases
33