I'm working on a serverless architecture using AWS Kinesis Data Streams and Lambda functions. I want to achieve the following:
Read data from the Kinesis stream in 15-minute blocks, starting from 00:00-00:15, 00:15-00:30, and so on throughout the day.
For each 15-minute block, trigger a Lambda function that processes the data for a specific device ID.
Within the Lambda function:
i.Extract data relevant to the device ID. ii.Calculate the average value for that data over the 15-minute block.
Store the calculated average for the device ID and time block in a database
Challenges:
- I'm unsure how to configure Kinesis or Lambda to achieve the periodic triggering based on 15-minute intervals.
- There might be a more efficient way to handle data aggregation within the Lambda function.
I'm looking for guidance on the best approach to implement this functionality. Any help will be greatly appreciated.