Building a modern data warehouse with Microsoft SQL Server, including ETL processes with Bronze Layer, Silver Layer and the Gold Layer, data modeling and as well as analytics.
Data Warehouse and Analytics Project
Welcome to the Data Warehouse and Analytics Project repository! ๐ This project demonstrates a comprehensive data warehousing and analytics solution, from building a data warehouse to generating actionable insights. Designed as a portfolio project, it highlights industry best practices in data engineering and analytics.
๐๏ธ Data Architecture
The data architecture for this project follows Medallion Architecture Bronze, Silver, and Gold layers: 
- Bronze Layer: Stores raw data as-is from the source systems. Data is ingested from CSV Files into SQL Server Database.
- Silver Layer: This layer includes data cleansing, standardization, and normalization processes to prepare data for analysis.
- Gold Layer: Houses business-ready data modeled into a star schema required for reporting and analytics.
๐ Project Overview
This project involves:
- Data Architecture: Designing a Modern Data Warehouse Using Medallion Architecture Bronze, Silver, and Gold layers.
- ETL Pipelines: Extracting, transforming, and loading data from source systems into the warehouse.
- Data Modeling: Developing fact and dimension tables optimized for analytical queries.
- Analytics & Reporting: Creating SQL-based reports and dashboards for actionable insights.
- SQL Development
- Data Architect
- Data Engineering
- ETL Pipeline Developer
- Data Modeling
- Data Analytics
๐ Project Requirements
Building the Data Warehouse (Data Engineering)
Objective
Develop a modern data warehouse using SQL Server to consolidate sales data, enabling analytical reporting and informed decision-making.Specifications
- Data Sources: Import data from two source systems (ERP and CRM) provided as CSV files.
- Data Quality: Cleanse and resolve data quality issues prior to analysis.
- Integration: Combine both sources into a single, user-friendly data model designed for analytical queries.
- Scope: Focus on the latest dataset only; historization of data is not required.
- Documentation: Provide clear documentation of the data model to support both business stakeholders and analytics teams.
BI: Analytics & Reporting (Data Analysis)
Objective
Develop SQL-based analytics to deliver detailed insights into:- Customer Behavior
- Product Performance
- Sales Trends
For more details, refer to docs/requirements.md.
๐ Repository Structure
data-warehouse-project/
โ
โโโ datasets/ # Raw datasets used for the project (ERP and CRM data)
โ
โโโ docs/ # Project documentation and architecture details
โ โโโ etl.drawio # Draw.io file shows all different techniquies and methods of ETL
โ โโโ data_architecture.drawio # Draw.io file shows the project's architecture
โ โโโ data_catalog.md # Catalog of datasets, including field descriptions and metadata
โ โโโ data_flow.drawio # Draw.io file for the data flow diagram
โ โโโ data_models.drawio # Draw.io file for data models (star schema)
โ โโโ naming-conventions.md # Consistent naming guidelines for tables, columns, and files
โ
โโโ scripts/ # SQL scripts for ETL and transformations
โ โโโ bronze/ # Scripts for extracting and loading raw data
โ โโโ silver/ # Scripts for cleaning and transforming data
โ โโโ gold/ # Scripts for creating analytical models
โ
โโโ tests/ # Test scripts and quality files
โ
โโโ README.md # Project overview and instructions
โโโ LICENSE # License information for the repository
โโโ .gitignore # Files and directories to be ignored by Git
โโโ requirements.txt # Dependencies and requirements for the project
๐ก๏ธ License
This project is licensed under the MIT License. You are free to use, modify, and share this project with proper attribution.