What problem does connection pooling solve?
DB Request Throttling/DDOS type errors
When you have too many things trying to authenticate (which takes time) or make requests (which adds load) to a DB
What is AWS’s Managed Connection Pooling Solution?
RDS Proxy
How does a client authenticate to RDS Proxy?
IAM Credentials
How does RDS Proxy authenticate to a database?
secrets, which must be stored in AWS Secrets Manager
In an RDS Proxy setup, what additional work is needed in a failover situation?
None. RDS Proxy handles all failover work automatically
What is a connection pool?
A dedicated set of warm, authenticated connections to a DB, which lowers connection time and can improve load
What does the Aurora Data API do?
Makes what would normally be stateful connections to a DB available as stateless HTTP API calls
Suppose you have a Relational DB that keeps getting throttled with high traffic. What are the ways that you can mitigate this bottleneck?
How do clients authenticate to the Aurora Data API?
IAM
In the context of AWS
What does LSI stand for?
Local Secondary Index
(in DynamoDB)
In the context of AWS,
What does GSI stand for?
Global Secondary Index
(in DynamoDB)
What is the unique identifier in a Dynamo DB table?
The Partition Key + Sort Key
Why is an LSI considered “local”?
LSI only scopes to 1 Partition Key within the DB, and exists physically co-located to the raw data there
What consistency model does an LSI use?
Strong Consistency
LSI is updated transactionally with raw data
What consistency model does a GSI use?
Eventual Consistency
How do you add an LSI to a Dynamo DB instance after it has been created?
You Can’t!
What is the maximum number of LSIs allowed per DynamoDB table?
5
In the context of DynamoDB
What does RCU stand for?
Read Capacity Unit(s)
In the context of DynamoDB
what does WCU stand for?
Write Capacity Unit(s)
What are the two different types of DynamoDB capacity structures?
How can you make sure that Dynamo DB transactions are ACID Compliant (if you need to for your use case)?
DynamoDB supports Transactions
Does Dynamo DB support conditional writes?
Yes
What API parameter is used to enforce data integrity with DynamoDB Conditional Writes?
The ConditionExpression parameter, used with API calls like PutItem or UpdateItem.
In DynamoDB, how do you ensure a new item is created only if it doesn’t already exist?
Use the PutItem API with the ConditionExpression: attribute_not_exists(PartitionKey)