Real-Time Analytics Dashboard
Real-time analytics is the cornerstone of data-driven decision-making, but building a platform that ingests billions of events daily and renders dashboards with sub-second data freshness requires a sophisticated multi-layer architecture. In this challenge, you will design an analytics platform that collects clickstream data from web and mobile applications, processes it through a real-time stream pipeline, and serves interactive dashboards with drill-down capabilities. The ingestion layer uses Amazon Kinesis Data Streams with enhanced fan-out, accepting events from client-side SDKs via API Gateway. Events are schematized using a schema registry (Glue Schema Registry) that validates event structure before processing, preventing bad data from corrupting downstream aggregations. The stream processing layer uses Amazon Kinesis Data Analytics (Apache Flink) for real-time aggregation: computing metrics like active users per minute, conversion funnels, and rolling window aggregations with exactly-once processing semantics. Pre-aggregated results write to two stores simultaneously: Amazon Timestream for time-series queries powering real-time dashboards, and S3 in Parquet format via Kinesis Data Firehose for historical analysis in Athena. The dashboard serving layer uses API Gateway and Lambda to query Timestream for the last 24 hours of real-time data and Athena for historical trend queries, merging results seamlessly. For high-traffic dashboards, pre-computed views are cached in ElastiCache with a refresh interval matching the stream processing window. The architecture handles late-arriving events using watermarks in Flink, reprocessing affected aggregation windows. A data quality pipeline monitors event volume, schema compliance, and aggregation consistency, alerting on anomalies. Cost optimization uses Kinesis on-demand capacity mode and Timestream's automatic tiering between memory and magnetic storage. This challenge teaches stream processing architecture, time-series data modeling, and the Lambda architecture pattern for combining real-time and batch analytics.
AWS Services You'll Use
Challenge Details
- Path
- Data-Intensive Systems
- Difficulty
- Advanced
- Duration
- 80 min
- Plan
- Pro
Architecture Patterns You'll Learn
Why This Challenge?
Unlike whiteboard exercises or multiple-choice quizzes, this challenge requires you to design a real architecture with actual AWS services, evaluate trade-offs, and defend your decisions. Our automated validators check your design against production-grade criteria. Complete it and it shows up in your verified portfolio with your architecture diagram and design rationale.
More from Data-Intensive Systems
Real-Time Search Engine
Design a search engine that indexes millions of documents and returns relevant results in milliseconds.
Advanced 路 75 minIoT Data Ingestion Pipeline
Design a pipeline that ingests, processes, and analyzes sensor data from thousands of IoT devices.
Advanced 路 75 minCollaborative Document Editor
Design a real-time collaborative editor where multiple users edit the same document simultaneously.
Advanced 路 80 minReady to design this for real?
Get the full scenario, design your architecture using real AWS services, and validate against production-grade criteria. Your completed challenge shows up in your verified portfolio.
Start Challenge