hands-on lab

Configure Amazon DynamoDB triggers with AWS Lambda

Up to 1h
Get guided in a real environmentPractice with a step-by-step scenario in a real, provisioned environment.
Learn and validateUse validations to check your solutions every step of the way.
See resultsTrack your knowledge and monitor your progress.


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


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

About the author


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.

Covered topics

Lab steps

Logging In to the Amazon Web Services Console
Enable Streams on a DynamoDB Table
Implement Lambda Function batch processing logic
Test the DynamoDB Trigger