Configure Amazon DynamoDB triggers with AWS Lambda
Amazon DynamoDB is a fully managed NoSQL database service, built for highly scalable systems.
DynamoDB Streams enable event-driven programming with AWS Lambda to define triggers in order to augment your database behavior or implement 3rd-party integrations.
In this Lab, you will learn how to process batches of DynamoDB updates with a Lambda Function. As a simple example, Python is used to create and sync generated fields. The same mechanism could be used to store operations logs, send SNS notifications, synchronize 3rd-party services, or any custom logic.
Learning Objectives
Upon completion of this Lab you will be able to:
- Enable Streams on DynamoDB services
- Create an AWS Lambda Function that triggers off of DynamoDB table changes
Lab Prerequisites
You should be familiar with:
- Basic concepts of DynamoDB (To learn more on the basics of DynamoDB, start from the Lab Introduction to DynamoDB)
- Experience developing in Python is beneficial but not required
- How to create a Lambda Function
Updates
May 11th, 2022 - Updated the instructions and screenshots to reflect the latest UI
September 10th, 2021 - Updated lab steps to reflect the new AWS DynamoDB user interface changes
March 8th, 2021 - Updated AWS Lambda lab steps to reflect latest user interface changes
January 22nd, 2021 - Updated AWS Lambda lab steps to reflect latest user interface updates
July 15th, 2020 - Improved lab formatting for an improved learning experience. Updated content to reflect the latest AWS Console experience
July 18th, 2019 - Improved the validation Lab Step to further check the work you perform in the Lab
January 10th, 2019 - Added a validation Lab Step to check the work you perform in the Lab
Environment before
Environment after
Alex is an Italian Software Engineer with a great passion for web technologies and music.
He spent the last 5 years building web products and deepening his knowledge on full-stack web development and software design, with a main focus on frontend and UX.
Despite being a passionate coder, Alex worked hard on his software and sound engineering background, which provides him the tools to deal with multimedia, signal processing, machine learning, AI, and many interesting topics related to math and data science.
Indeed, he had the opportunity to study and live in a very young and motivating environment in Bologna and Milan, two of the biggest and oldest Italian Universities. These experiences lead him to work on several projects involving robotics, machine intelligence, music semantic analysis and modern web development.