Lessons from Building a Serverless Data Pipeline with AWS Kinesis and Lambda
read.iopipe.com
read.iopipe.com
A record that spikes your memory footprint? Lambda will fail and continuously retry the batch.
Have a record that unexpectedly takes a long time to process? Lambda will time out and continuously retry.
You also have no control over when the lambda execution context recycles. Which can make a big difference to your datastore usage.
Instead want to spread the load? Spin up as many instances of the application you want, they don't need to be clustered, they will negotiate, using the lease table to take and balance the shards across all instances.