A script every five minutes scans a DynamoDB table for unpaid invoices to email reminders, burning read capacity mostly on no-op scans. Which approach better fits an event-driven design?
Select an answer to reveal the explanation.
Short Explanation
Don't walk every parking meter on the block every five minutes looking for expired ones—react when a meter expires. Streams, events, or narrow queries beat a hammering full-table Scan for unpaid-invoice reminders. Bigger capacity or bigger boxes just make wasteful polling more expensive.
Full Explanation
Periodic full-table DynamoDB Scan workloads often waste read capacity when most items are unchanged. Event-driven designs—DynamoDB Streams, EventBridge schedules with selective queries, or similar—process only relevant changes. Scaling capacity or compute around the same Scan pattern, or archiving to Glacier first, does not fix the polling anti-pattern.