Does DynamoDB support transactions?

Yes. DynamoDB supports ACID transactions via TransactWriteItems and TransactGetItems. Each transaction groups up to 100 actions across one or more tables in the same account and Region into a single all-or-nothing operation, with a combined size limit of 4 MB. Either every action succeeds or none do.

The two transaction APIs

  • TransactWriteItems — batches Put, Update, Delete, and ConditionCheck actions atomically. Synchronous and idempotent.
  • TransactGetItems — reads multiple items in a single atomic, consistent snapshot.

Rules and limits

  • Up to 100 items per transaction, across one or more tables.
  • All tables must be in the same account and Region.
  • Combined item size cannot exceed 4 MB.
  • You cannot target the same item twice in one transaction.

Transaction vs batch

Unlike BatchWriteItem, where items can succeed or fail independently, a transaction is all-or-nothing — use it when partial application would corrupt your data.

Go deeper

Learn patterns in DynamoDB transactions, and build the condition expressions they rely on with the Expression Builder. Download DynoTable to run transactional edits safely.

Console 없이 DynamoDB 작업하기

DynoTable은 DynamoDB를 위한 빠른 데스크톱 클라이언트입니다 — 테이블을 탐색하고, SQL 스타일 쿼리를 실행하고, 항목을 로컬에서 편집하세요.