What should a solutions architect recommend?
Create a DynamoDB table in on-demand capacity mode.
Create a DynamoDB table with a global secondary Index.
Create a DynamoDB table with provisioned capacity and auto scaling.
Create a DynamoDB table in provisioned capacity mode, and configure it as a global table.
Explanations:
Using on-demand capacity mode allows DynamoDB to automatically handle unpredictable traffic spikes without the need to provision capacity. It can scale to accommodate sudden increases in read and write requests, making it cost-effective for tables that experience variable workloads, especially when there are periods of low activity.
Creating a global secondary index (GSI) does not directly address the concerns of cost optimization or unpredictable traffic management. While GSIs can enhance query capabilities, they do not affect the capacity settings or the ability to handle traffic spikes efficiently.
Provisioned capacity with auto-scaling can help manage costs and adapt to changing workloads, but it requires prior configuration of minimum and maximum read/write capacity units. It may not respond quickly enough during sudden traffic spikes, leading to throttling if the provisioned capacity is exceeded.
Configuring a DynamoDB table as a global table with provisioned capacity does not optimize costs effectively. While it allows for cross-region replication, it also incurs additional costs and does not inherently manage unpredictable traffic spikes as effectively as on-demand capacity mode.