AWS Database Blog
Rate-limiting calls to Amazon DynamoDB using Python Boto3, Part 2: Distributed Coordination
Part 1 of this series showed how to rate-limit calls to Amazon DynamoDB by using Python Boto3 event hooks. In this post, I expand on the concept and show how to rate-limit calls in a distributed environment, where you want a maximum allowed rate across the full set of clients but can’t use direct client-to-client communication.
Rate-limiting calls to Amazon DynamoDB using Python Boto3, Part 1
In this post, I present a technique where a Python script making calls to Amazon DynamoDB can rate limit its consumption of read and write capacity units. The technique uses Boto3 event hooks to apply the rate limiting without having to modify the client code performing the read and write calls.
How Amazon maintains accurate totals at scale with Amazon DynamoDB
Amazon’s Finance Technologies Tax team (FinTech Tax) manages mission-critical services for tax computation, deduction, remittance, and reporting across global jurisdictions. The Application processes billions of transactions annually across multiple international marketplaces. In this post, we show how the team implemented tiered tax withholding using Amazon DynamoDB transactions and conditional writes.
Timestamp writes for write hedging in Amazon DynamoDB
In this post we demonstrate how to enforce client-side timestamp-based write sequence order on Amazon DynamoDB. The goal is to ensure items with lower timestamps don’t overwrite items with higher timestamps, even if the requests are received out of order by the database.
Announcing configurable point-in-time recovery periods for Amazon DynamoDB
Amazon DynamoDB enables you to back up your table data continuously by using point-in-time recovery (PITR). When you enable PITR, DynamoDB backs up your table data automatically with per-second granularity. PITR helps protect you against accidental writes and deletes. For example, if a test script accidentally writes to a production DynamoDB table, or someone mistakenly […]
Monitor Amazon DynamoDB operation counts with Amazon CloudWatch
Amazon DynamoDB continuously sends metrics about its behavior to Amazon CloudWatch. Something I’ve heard customers ask for is how to get a count of successful requests of each operation type (for example, how many GetItem or DeleteItem calls were made) in order to better understand usage and costs. In this post, I show you how to retrieve this metric.
Use Amazon DynamoDB incremental export to update Apache Iceberg tables
Amazon DynamoDB is a fully managed, serverless, key-value NoSQL database designed to run high-performance applications at any scale. DynamoDB recently launched a new feature: Incremental export to Amazon Simple Storage Service (Amazon S3). You can use incremental exports to update your downstream systems regularly using only the changed data. You no longer need to do a […]
Introducing incremental export from Amazon DynamoDB to Amazon S3
Amazon DynamoDB is a key-value and document database that delivers single-digit millisecond performance at any scale. It’s a fully managed, multi-Region, multi-active, durable database with built-in security, backup and restore, and in-memory caching for internet-scale applications. In 2020, DynamoDB introduced a feature to export DynamoDB table data to Amazon Simple Storage Service (Amazon S3) with […]
Handle traffic spikes with Amazon DynamoDB provisioned capacity
If you’re using Amazon DynamoDB tables with provisioned capacity, one challenge you might face is how best to handle a sudden request traffic increase (spike) without being throttled. The more sudden and extended the traffic spike, the more likely a table will experience throttles. However, throttles aren’t inevitable even for spiky traffic. Here we walk you through eight designs to handle traffic spikes, and present their advantages and disadvantages.
Generate a distinct set of partition keys for an Amazon DynamoDB table efficiently
Amazon DynamoDB is a fully managed, serverless NoSQL database service that provides fast and predictable performance with seamless scalability. Every table in DynamoDB has a schema which specifies if it has a simple partition key (for pure key-value lookups), or a partition key and sort key both (for more complex query patterns). You use these […]









