The Right Database
The Right Database
Yaki Zakai
Manager, Solutions Architecture, AWS
• Database Considerations
• Common data models/use cases
• AWS database services
Data Considerations
Key-Value Store Query by key with high throughput & fast ingestion Tracking devices
Document Store Index & store documents for query on any property Patient data
Time-Series Store Store and process data sequence Process Engine telemetry
Users: 1 million+
Data volume: TB–PB–EB
Locality: Global
Performance: Milliseconds–microseconds
Request rate: Millions
Access: Web, mobile, IoT, devices
Scale: Up-down, Out-in
Economics: Pay for what you use
Ride hailing Media streaming Social media Dating Developer access: No assembly required
CHALLENGE
Wanted to enable anyone to learn a
language for free.
SOLUTION
Purpose-built databases from AWS:
• DynamoDB: 31B items tracking
which language exercises completed
• Aurora: primary transactional
database for user data
• ElastiCache: instant access to
common words and phrases
Result:
More people learning a language on
© 2019, Amazon Web Services, Inc. or its Affiliates. Duolingo than entire US school system
Common data categories and use cases
Referential Low-latency, Indexing and Microseconds Creating and Indexing and Collect, store, Complete,
integrity, ACID key lookups storing latency, key- navigating searching and process immutable, and
transactions, with high documents based queries, data relations semistructured data sequenced verifiable
schema- throughput and with support and specialized easily and logs and data by time history of all
on-write fast ingestion for query on data structures quickly changes
of data any attribute
Lift and shift, Real-time Content Leaderboards, Fraud detection, Product IoT Systems
EMR, CRM, bidding, management, real-time social catalog, help applications, of record,
finance shopping cart, personalization, analytics, networking, and FAQs, event tracking supply chain,
social mobile caching recommendation full text health care,
engine registrations,
financial
First Name
Lift and shift, ERP, CRM,
finance Last Name
Medical Specialty Medical Treatment
* Hospital Affiliation * Treatment ID
Procedure
How Performed
Amazon Aurora Hospital Adverse Outcome
Amazon RDS * Hospital ID
Contraindication
Amazon Redshift Name
Address
Rating
Creating and
navigating
relations
between data
easily
and quickly
Amazon
Netptune
Creating and
navigating
relations PRODUCT
easily
and quickly KNOWS
PURCHASED
Netptune
FOLLOWS
gremlin> V().has(‘name’,’sara’).as(‘customer’).out(‘follows’).in(‘follows’).out(‘purchased’)
( (‘customer’)).dedup() (‘name’) ('name')
PRODUCT
PURCHASED PURCHASED
FOLLOWS
…
…
…
Real-time bidding,
shopping cart, IoT
device tracking
Partitions Partitions Partitions
Amazon
DynamoDB … … …
Gamers
User profiles
Indexing and
storing {
documents with id: 181276,
support { username: "sue1942",
id: 181276, name: {first: "Susan",
for query on
username: "sue1942", last: "Benoit"},
any attribute name: {first: "Susan", ExplodingAcorns: {
Self Contained last: "Benoit"} hi_score: 3185400,
Flexible Schema } global_rank: 5139,
bonus_levels: true
},
promotions: ["new user","5%",”acorn"]
}
Amazon
DocumentDB
Maintains a sequenced record of Uses cryptography to Executes 2–3X as many Easy to use, letting you
all changes to your data, which generate a secure output transactions than ledgers use familiar database
cannot be deleted or modified; file of your data’s history in common blockchain capabilities like SQL APIs
you have the ability to query and frameworks for querying the data
analyze the full history
Amazon
EMR Elasticsearch Store exabytes of data
Service
QuickSight
Snowball Kinesis
Data Streams
Snowmobile Kinesis
Kinesis Data Firehose
Video Streams
© 2019, Amazon Web Services, Inc. or its Affiliates.
In Summary….
Choose the right tool for the job Focus on shape, size and AWS purpose-built databases
compute
Start from the application and work
backwards