AWS Quicksight for Reports & Dashboards

Overview

AWS QuickSight is a powerful cloud-based business intelligence service that enables the creation of scalable, interactive, and customizable dashboards and reports. By leveraging QuickSight, organizations can analyze data directly from diverse sources and share insights across teams seamlessly. Its embedding capabilities make it an ideal choice for integrating reports and dashboards into web applications, ensuring a consistent user experience without additional overhead for updates or maintenance.

In this case study, we explore how AWS QuickSight was integrated into the Leave Management System, decommissioning all custom reporting APIs and eliminating the need for manual visualization development. Visualizations were created directly within QuickSight and seamlessly embedded into the web application using web frames and authentication mechanisms. This approach decoupled web application releases from dashboard updates, ensuring flexibility and faster iterations for reporting enhancements.

Project Info

Category

Cloud Backend, Web Apps

Tags

Features

Customizable and Interactive Dashboards
Rich dashboards and visualizations provided actionable insights into leave utilization, request trends, and monthly statistics, improving decision-making
Seamless Web App Integration
By embedding QuickSight dashboards via generated URLs, updates are managed directly within QuickSight, eliminating the need for application releases and reducing development overhead.
Simplified User Experience
Provides secure, one-click access to personalized dashboards embedded directly within the application, without the need for additional login(to Quicksight).
Database-Driven Insights
QuickSight connects directly to the database, eliminating the need for intermediate APIs and providing real-time insights with minimal latency.

Architecture

The solution leverages AWS QuickSight’s per-user pricing model to enable secure, user-specific access to embedded dashboards. Key Components of the architecture include

AWS Lambda

Quicksight

Datasource

A single connection to MySQL RDS powers all dashboards and insights allowing data to be pulled to SPICE.

Datasets

Datasets are created for key entities, including:

Leave Balance
Leave Requests
Credit Requests
Holidays
Analysis

Analyses are built to visualize and interpret data, such as:

Charts for Leave Utilization, Leave Distribution,
and Monthly Statistics on Requests and Usage
Tables for Leave Requests, Credit Requests, and Leave Balance
SPICE (Super-fast, Parallel, In-memory Calculation Engine)
Enhances dashboard responsiveness by preloading data
into memory, enabling users to interact with reports without
delays, even for large datasets.
Enabled setup for incremental data refresh reducing
processing time and improving performance. It allows for
near real-time updates, ensuring that users always see the
most current data.
Dashboards
A comprehensive dashboard consolidating analysis views such as Leave balance & Leave requests history.
An insights dashboard showcasing charts for actionable visualizations.

Security and Compliance

Shared Folders in Quicksight for access control

To ensure secure and controlled access to reports and dashboards, Shared Folders in QuickSight enable seamless collaboration while maintaining strict access controls.

This allowed the team to organize their reports and dashboards into a structured hierarchy, making it easy to manage access and distribute resources across teams.


Authorisation in application
Due to the limited user base and the administrative nature of the dashboards, the Per User Pricing Model was chosen over capacity pricing. This required provisioning application users in QuickSight with appropriate roles, tailored to their reporting and access needs.


On load of the web application, the Lambda function is invoked that validates the logged-in user’s identity and checks their existence in QuickSight using the DescribeUser API. and only on successful authentication, shows the dashboard within the web application.

Result

Faster Time to Market: By leveraging QuickSight’s built-in capabilities for creating dashboards and visualizations, the need for custom development was eliminated. This significantly reduced the time and effort required to design, implement, and deploy reporting features, allowing the dashboards to be ready for end-users much faster than traditional development cycles.

Cost-Effective Pricing: Leveraging the Per User Pricing Model optimized costs, aligning with the limited user base while ensuring robust access control.