A visual summary of the complete data analysis project, from planning to final dashboard.
To provide actionable insights for Sales, Marketing, Operations, and Finance to maximize revenue and gross profit.
An interactive Power BI dashboard to monitor KPIs, analyze trends, and support strategic decision-making based on Joint Business Plans (JBPs).
A robust, scalable approach to protect operational systems and optimize for analytics.
OLTP System
(e.g., MySQL)
ETL Process
(Extract, Transform, Load)
Data Warehouse
(e.g., Snowflake)
Power BI
(Analytics Tool)
For this project, a simplified approach was taken: Power BI connects directly to the MySQL database.
The team set up a local MySQL server and imported the entire database, including tables and records, from a `db_dump.sql` file.
Total revenue in 2020:
SELECT SUM(t.sales_amount)
FROM sales.transactions t
JOIN sales.date d ON t.order_date = d.date
WHERE d.year = 2020;
Insight: Revealed a revenue decline from the previous year.
Total transactions in Chennai:
SELECT COUNT(*)
FROM sales.transactions
WHERE market_code = 'Mark001';
Insight: Quantified business volume in a key market.
Collected and integrated data from multiple sources (e.g., e-commerce platforms, inventory management systems, finance software) into a central model. Cleaned data to ensure accuracy and built a star schema in Power BI optimized for retail and distribution analysis.
Sales Systems (Sell-in/Sell-out), Inventory Management, Finance ERP, Marketing Platforms.
Used Power Query to extract, transform, and load data. Handled data quality issues like mixed currencies, inaccurate values, and duplicates.
Created a star schema with a central `transactions` table linked to dimensions like `Customers`, `Products`, `Date`, and `Markets`.
Addressed duplicate currency entries (e.g., 'INR' and 'INR\r') by filtering the data in Power Query to only keep the correct, majority records, ensuring data integrity.
Created a dedicated table for base measures using DAX (Data Analysis Expressions) to define key calculations for the dashboard.
Revenue = SUM(sales_transactions[normalized_sales_amount])
Sales Quantity = SUM(sales_transactions[sales_quantity])
The final dashboard was built using a variety of interactive visuals:
Added `cost_price` and `profit_margin` columns to the data model. Created new DAX measures to analyze profitability, uncovering deeper insights.
Profit Margin % = DIVIDE([Total Profit Margin], [Revenue], 0)
Insight: Revealed that the highest revenue markets were not the most profitable, shifting focus to markets with better ROI.
Created a new "Performance Insights" page with a dynamic profit target slider. Conditional formatting highlights underperforming zones in red, allowing for immediate performance assessment.
The final report is published to the Power BI web service, enabling cloud-based access and collaboration features like: