The Challenge:
How do we query data from DynamoDB, process it with SQL-like queries, and visualize it in QuickSight—all while keeping the solution scalable and cost-efficient?

Solution:
This serverless solution leverages Lambda for DynamoDB extraction, S3 for spill storage, Athena+Glue for SQL processing, and QuickSight for scalable visualizations—all without managing infrastructure.

Architecture:

Image description

Create a quicksight account:

Image description

Image description

Setting Up DynamoDB:
• Created a DynamoDB table with partition and sort keys.
• Insert sample data in JSON format.
Image description

Configuring Lambda as a Data Connector:
• Set up an AWS Lambda function to query DynamoDB and return data in Athena-compatible format.
• Set up IAM roles to allow Lambda to read from DynamoDB and write to S3.

Image description

Image description

Querying Data in Athena:
• Executed Athena SQL queries to filter and process data.

Image description

IAM Role Configuration for QuickSight:
• Granted QuickSight permissions to invoke Lambda and read from S3.
• Updated IAM role policies for secure access.

Image description

Glue’s background setup:
Lambda extracts DynamoDB data to S3, with Glue automatically managing schema metadata for Athena querying.

Image description

Building Interactive QuickSight Dashboards:
• Created donut charts, bar charts, and tables to visualize task completion status.

Image description
• Enabled live data updates from DynamoDB → Athena → QuickSight.

Image description

Summary: From DynamoDB to dashboards in minutes

  1. Lambda transforms streams
  2. S3 stores efficiently
  3. Athena queries via Glue
  4. QuickSight visualizes All serverless. All cost-optimized