End-to-End ELT Data Pipeline — Azure Cloud
Azure • dbt • Github ActionsBuilt a production-grade ELT pipeline on Microsoft Azure, transforming the Olist Brazilian E-Commerce dataset (~100K orders, 9 relational tables) from raw CSV files into an analytics-ready Kimball star schema using the Medallion Architecture.
- Ingested 9 CSV files (125MB) from Azure Blob Storage into Azure SQL Database via two methods — a Python script using SQLAlchemy with Microsoft Entra DefaultAzureCredential (zero hardcoded credentials), and an Azure Data Factory pipeline with ForEach, Filter, and Copy Data activities using Managed Identity authentication.
- Transformed raw data through a Medallion Architecture (Bronze → Silver → Gold) using dbt Core with dbt-sqlserver adapter — staging models for cleaning and casting, mart models implementing Kimball dimensional modelling with incremental materialisation and upsert logic via MERGE statements.
- Implemented 46 automated dbt tests (unique, not_null, relationships, composite key validation via dbt_utils) with GitHub Actions CI/CD running dbt run and dbt test on every push, pull request, and manual trigger — branch protection rules enforce only tested code reaches production.