DynamoDB
DynamoDB is a NoSQL fully managed Database-as-a-Service (DBaaS) product available within AWS.





Tables

On-Demand Backups

Point-in-time Recovery (PITR)

Considerations

Operations, Consistency and Performance
Read and Writing

Query

Scan

Consistency Model


WCU Calculation

RCU Calculation


Indexes (LSI and GSI)
Local Secondary Indexes (LSI) and Global Secondary Indexes (GSI) allow for an alternative presentation of data stored in a base table.
LSI allow for alternative SK's whereas with GSIs you can use alternative PK and SK.

Local Secondary Indexes (LSI)


Global Secondary Indexes (GSI)


LSI and GSI Considerations

Streams and Triggers
DynamoDB Streams are a 24 hour rolling window of time ordered changes to ITEMS in a DynamoDB table
Streams have to be enabled on a per table basis , and have 4 view types
KEYS_ONLY
NEW_IMAGE
OLD_IMAGE
NEW_AND_OLD_IMAGES
Lambda can be integrated to provide trigger functionality - invoking when new entries are added on the stream.




DynamoDB Accelerator (DAX)
DynamoDB Accelerator (DAX) is an in-memory cache designed specifically for DynamoDB. It should be your default choice for any DynamoDB caching related questions.
Traditional Caches vs DAX



Global Tables
DynamoDB Global Tables provides multi-master global replication of DynamoDB tables which can be used for performance, HA or DR/BC reasons.


Time-To-Live (TTL)
Amazon DynamoDB Time to Live (TTL) allows you to define a per-item timestamp to determine when an item is no longer needed.
Shortly after the date and time of the specified timestamp, DynamoDB deletes the item from your table without consuming any write throughput.
TTL is provided at no extra cost as a means to reduce stored data volumes by retaining only the items that remain current for your workload’s needs


Last updated