END-TO-END ELT DATA PIPELINE

Brazilian E-Commerce  |  Azure Cloud Platform  |  Medallion Architecture

Building a Scalable, Reliable & Governed Data Pipeline from Raw Data to Business Insights

BlobAzure Blob Storage
PythonPython
ADFAzure Data Factory
SQLAzure SQL Database
dbtdbt Core
GitHubGitHub Actions
Entra IDMicrosoft Entra ID
SQLSQL

Data Sources

Blob
Azure Blob Storage
Australia East
9 CSV files
125 MB raw data
~100K orders
2016 – 2018 data
Python
Python Script
SQLAlchemy + pandas
DefaultAzureCredential
Token injection
latin-1 encoding
ADF
Azure Data Factory
No-code pipeline
ForEach + Filter
Managed Identity
Daily trigger
Email alerts

Medallion Architecture — Azure SQL Database (Serverless)

🥉 Bronze Layer
Raw Ingestion Layer
SQL
Raw Tables (raw schema)
  • Exact copy of source data
  • No transformations applied
  • loaded_at timestamp added
  • Full reload on every run
Key Features
  • Source of truth preserved
  • 9 tables ingested
  • BOM character handled
  • latin-1 encoding fix
🥈 Silver Layer
Cleansed & Standardised Layer
dbt
dbt Staging Models (9 tables)
  • Clean & rename columns
  • Cast data types correctly
  • transformed_at timestamp
  • Geolocation deduplication
Key Features
  • unique + not_null tests
  • Composite key validation
  • dbt_utils test framework
  • schema.yml documentation
🥇 Gold Layer
Business Ready Layer
dbt
Kimball Star Schema
  • fact_orders (factless fact)
  • fact_order_items
  • fact_order_payments
  • fact_reviews
Key Features
  • Incremental materialisation
  • Upsert via MERGE statement
  • dim_customers + geolocation
  • Referential integrity tests
CI/CD & Security
🔐
Zero Credentials
Microsoft Entra ID
🌿
Branch Protection
Main branch locked
⚙️
Dev / Prod Split
dbt profiles
🔔
Failure Alerts
Email + SMS
📋
Audit Trail
GitHub Actions log
GitHubGitHub Actions — dbt run + dbt test on every push, PR & manual trigger
dbt 23+ workflow runs · Branch protection enforced
dbt46 Tests Passing · Across Staging and Mart Layer

Consumers

📊
BI Dashboards
Tableau / Power BI
🔍
Analytics Teams
Self-service SQL
🤖
AI / ML Use Cases
Clean training data
📈
Reporting & Alerts
Automated insights
💰
Low Cost
Entire project build
46
dbt Tests Passing
9
Source Tables
23+
CI/CD Pipeline Runs
16
Models Created
Key Highlights
✓
ELT over ETL — raw layer preserved as source of truth
✓
Dual ingestion — Python script + Azure Data Factory
✓
Kimball dimensional modelling with star schema
✓
Incremental MERGE upsert on all fact tables
✓
Branch protection — only tested code reaches production
Pipeline Flow
Blob Storage
→
ADF Pipeline
→
Raw Schema
→
dbt Staging
→
dbt Mart
→
CI/CD Tests
Business Impact
✓
Production-grade pipeline
✓
Automated daily refresh with failure alerting
✓
Trusted data — 46 tests on every deployment
✓
BI-ready star schema for any analytics tool
✓
Dev/prod separation prevents data corruption