How to Use Objects in Amazon S3 to Trigger Automated Workflows Using AWS Lambda

Serverless | 6 Demos | About 1 hour

Learning Path

Access Resources

Download slide decks, check out additional helpful resources, and receive learning path email notifications.

X

Table of Contents

    • 1. The S3-to-Lambda Serverless Design Pattern

      The S3-to-Lambda serverless design pattern can become a flexible core for your serverless applications. In this pattern, you configure S3 to notify Lambda when events happen, to run your custom code. This video shows how this works in detail, reviewing the characteristics of both services, and how to use the integration for building highly scalable applications.
      7:42
    • 2. Automated Translation Using S3 and Lambda

      Learn how you can bring automated natural language translation into your applications with minimal code through Amazon Translate. In this walkthrough, you’ll see how to implement an automated and scalable translation process for assets stored in an S3 bucket. You can deploy the code from the GitHub repository directly to your AWS account.
      9:25
    • 3. Speech-to-Text Using S3 and Lambda

      See how you can use bring automated speech-to-text into your applications with minimal code using Amazon Transcribe. This video shows how to take the transcribed text and use Amazon Comprehend for a sentiment analysis score, which is stores in a DynamoDB table.
      7:27
    • 4. Automated Data Import to DynamoDB

      Amazon DynamoDB is a fast, web-scale NoSQL database that is central to many serverless applications. The S3-to-Lambda pattern can be used to load data into a DynamoDB table directly from objects stored in an S3 bucket. See how you can set this up in your own applications in this video.
      7:52
    • 5. Automated Workflows with Step Functions

      AWS Step Functions allows you to represent complex business logic flows in your application without using custom code. You can trigger Step Functions workflows from S3 events, enabling you to build a scalable state machine easily. In this video, learn how to create a workflow that’s triggered by photos stored in an S3 bucket.
      8:43
    • 6. Serverless File Uploading with S3 and Lambda

      The serverless approach allows your application to use a presigned URL and upload directly to Amazon S3. In this video, learn how to implement an uploading solution for a broader application.
      8:06

Description

Amazon S3 is a highly durable object store in the cloud, and AWS Lambda runs custom code on-demand in response to events. You can combine these two serverless services to build robust, scalable solutions to common problems by using objects in S3 as events that trigger custom code in Lambda. This S3 and Lambda pattern also has lots of other great applications - it’s flexible, quick to implement, and easy to understand.

For serverless builders developing enterprise applications, this allows you to quickly build solutions that translate and transcribe data, start workflows in Step Functions, or upload large amounts of data to DynamoDB. The S3-to-Lambda pattern is a robust core for many serverless architectures, and can be used to process events at scale reliably and cost effectively. And as your needs change, you can easily update the design to keep pace with your users.

In this learning path, you will get an overview of several example applications, deploy applications into your own AWS account, and explore the potential for extending these examples for your own business use-cases. By the end, you will be ready to develop sophisticated distributed applications built around S3 events, using custom code to integrate with other AWS services.

Learning Objectives

  • Objective One

    Understanding how S3 events can trigger custom code in Lambda.

  • Objective Two

    Learn how to manage throughput and scaling for large numbers of objects.

  • Objective Three

    Get hands-on with practical examples and explore the code repository.