A retail company processes high-frequency transactional data using an Amazon Kinesis Data Stream with shards. An AWS Lambda function acts as the consumer to process and save these records to Amazon DynamoDB. The records contain a `transactionId` (UUID), `customerId` (high entropy), `region` (only unique values), and `transactionType` (e.g., 'purchase', 'refund'). The developer notices frequent `ProvisionedThroughputExceededException` errors on one specific shard, while the other shards are underutilized. Additionally, the developer needs to route all 'refund' transactions with an amount greater than to a third-party audit API using Amazon EventBridge.
Which two configurations should the developer implement to resolve the throttling issue and route the required transaction events?
- Configure the Kinesis producer to use `customerId` or `transactionId` as the partition key, and implement exponential backoff with jitter on write failures.Answer
- Create an EventBridge rule on the default event bus with an event pattern filtering for `transactionType` matching 'refund' and `amount` greater than , and set the target as an EventBridge API Destination.Answer
- CConfigure the producer to use the `region` attribute as the partition key for the Kinesis Data Stream.
- DIncrease the Lambda function's maximum execution timeout to minutes and set the batch size to .
- EDeploy the consumer Lambda function in a private VPC subnet without a NAT Gateway or VPC endpoints.