AWS resources

In my opinion, the most complicated part of this entire system is set up all of the various resources and the interplay between them all. If you count up the number of resources we need to make this system work, the list quickly grows:

  • Two S3 buckets
  • One Kinesis stream
  • One Kinesis Firehose stream
  • One DynamoDB table
  • Four Lambda functions
  • Multiple IAM roles

Not only do we need to create all of the preceding resources, but we need to ensure they can communicate with one another. As is often the case with building with AWS, much of the work involved in managing a stack such as this is getting permissions correct so that the Lambda function can read/write from/to the right S3 buckets, DynamoDB table, or Kinesis stream.

You can ...

Get Serverless Design Patterns and Best Practices now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.