DynamoDB Advanced Features

DynamoDB Streams

  • DynamoDB Streams is an optional feature that captures data modification events in DynamoDB tables.

  • The data about these events appear in the stream in near-real time, and in the order that the events occurred.

AWS Lambda Triggers

  • DynamoDB is integrated with AWS Lambda so that you can create triggers - pieces of code that automatically respond to events in DynamoDB Streams.

  • With triggers, you can build applications that react to data modifications in DynamoDB tables.

AWS DAX

  • DynamoDB Accelerator (DAX) is a fully managed, highly available, in-memory cache for DynamoDB that delivers up to a 10 times performance improvement even at millions of requests per second.

  • If DAX has the item available (a cache hit), DAX returns the item to the application without accessing DynamoDB.

  • If DAX does not have the item available (a cache miss), DAX passes the request through to DynamoDB.

    • When it receives the response from DynamoDB, DAX returns the results to the application.

    • But it also writes the results to the cache on the primary node.

DynamoDB Transactions

  • DynamoDB transactions simplify the developer experience of making coordinated, all-or-nothing changes to multiple items both within and across tables.

  • Either all the changes work or none of them do.

On-Demand Mode instead of Provisioned Mode

  • DynamoDB on-demand is a flexible billing option capable of serving thousands of requests per second without capacity planning.

  • DynamoDB on-demand offers pay-per-request pricing for read and write requests so that you pay only for what you use.

Global Table

  • A global table is a collection of one or more replica tables, all owned by a single AWS account.

  • A replica table is a single DynamoDB table that functions as a part of a global table.

  • Every replica table has the same table name, the same data set and the same primary key schema.

  • When you create a DynamoDB global table, it consists of multiple replica tables (one per Region) that DynamoDB treats as a single unit.

Last updated