Serverless applications don’t require you to provision, scale, and manage any servers. You can build them for nearly any type of application or backend service, and everything required to run and scale your application with high availability is handled for you.
In this project, you’ll learn how to build a serverless app to process real-time data streams. You’ll build infrastructure for a fictional ride-sharing company. In this case, you will enable operations personnel at a fictional Wild Rydes headquarters to monitor the health and status of their unicorn fleet. Each unicorn is equipped with a sensor that reports its location and vital signs.
You’ll use AWS to build applications to process and visualize this data in real-time. You’ll use AWS Lambda to process real-time streams, Amazon DynamoDB to persist records in a NoSQL database, Amazon Kinesis Data Analytics to aggregate data, Amazon Kinesis Data Firehose to archive the raw data to Amazon S3, and Amazon Athena to run ad-hoc queries against the raw data.
This workshop is broken up into four modules. You must complete each module before proceeding to the next.
1. Build a data stream
Create a stream in Kinesis and write to and read from the stream to track
Amazon Cognito identity pool to grant live map access to your stream.
2. Aggregate data
Build a Kinesis Data Analytics application to read from the stream
3. Process streaming data
Persist aggregate data from the application to a backend database
4. Store & query data
Use Kinesis Data Firehose to flush the raw sensor data to an S3
AWS Experience: Beginner to Intermediate
Time to complete: 110 minutes
To complete this tutorial you will use:
• Active AWS Account**
• Browser (Chrome recommended)
• AWS Lambda
• Amazon Kinesis
• Amazon S3
• Amazon DynamoDB
• Amazon Cognito
• Amazon Athena
• AWS IAM
*This estimate assumes you follow the recommended configurations throughout the tutorial and terminate all resources within 2 hours.
**Accounts that have been created within the last 24 hours might not yet have access to the resources required for this project.
In order to complete this workshop, you’ll need an AWS account and access to create AWS Identity and Access Management (IAM), Amazon Cognito, Amazon Kinesis, Amazon S3, Amazon Athena, Amazon DynamoDB, and AWS Cloud9 resources within that account. The step-by-step guide below explains you how to set up all prerequisites.
You have set everything up to get started with serverless real-time data processing. In the next module you will set up a data stream to collect and process real-time data.