Basics
- DynamoDB is a public Database as a Service (DBaas)
- It is a key-value & a document store
- It is a wide column key-value database
- Highly resilient product either across RZs or if configured globally resilient across regions
- Data is replicated across multiple storage nodes by default
- SSD based providing single digit miliseconds latency
- One can define automatic deletion of items in a period by using TTL. A stream can be defined on TTL
Tables
- Table is a grouping if items all sharing same primary key
- Table can have infinite number of items
- A primary key can be
- Simple PK or Partition Key only PK
- Composite PK i.e. a combination of Partition Key and a Sort Key
- An item as zero or more attributes
- The total size of an item can not exceed 400 kb which includes primary key, attribute names and attribute values
- For provisioned capacity, we need to explicitly set capacity values on per table basis
- Capacity is defined in terms of Read Capacity Unit (RCU) & Wri Capacity Unit (WCU)
- RCU equals 4kb/s of read. WCU equals 1kb/s of write
Backups
- Manual backups allow a user to manually full backup , restor it in same or different region, backup with or without indexes and adjust encryptions settings
- Point In Time Recovery(PITR) is disabled by default and needs t be enabled on table by table basis
- PITR maintains a continuos record of changes over a 35 day period with 1 second granularity