Hands-On Lab

UrbanPulse:
Build a Smart City Operations Platform on Microsoft Fabric

Five goals take you from raw streaming data to a multi-agent orchestrator and source-controlled workspace on Microsoft Fabric. Each goal maps to one or more modules; pick a goal pill below to focus the view, or keep All selected to see the full lab in order.

Duration
~6 hours
Goals
5
Skill level
Intermediate
Environment
Capacity provided

What is UrbanPulse?

UrbanPulse is the fictional SaaS product you'll be building. It's a Smart City operations platform aimed at municipalities that run multiple public-service domains - hospitals, transit, public safety - and want one operational view across all of them.

🏥

Hospital telemetry

Live patient vitals (heart rate, SpO2) and movement events (admit, transfer, discharge, imaging, surgery) from a regional hospital network. Reference data for hospitals, wards, and staff comes from an Azure SQL operational database.

🚆

Transit telemetry

Live train positions, speeds, and delay status across the Red, Blue, and Green metro lines. Route topology and regions come from an Azure Cosmos DB document store.

🌐

Cross-domain reasoning

A shared Region concept ties hospitals and trains together so an operator can ask one question - "Region A has train delays AND rising hospital load. What should we do?" - and get a single, grounded answer.

Across the day, you'll ingest these data sources into one Fabric workspace, transform them into curated Silver and Gold tables, build reports in Power BI and a real-time dashboard, and apply AI through Fabric Ontologies, Data Agents, and an Azure AI Foundry orchestrator.

Lab Goals

MODULE 0

Setup & Environment Check

Sign in to Fabric with your lab account, confirm the lab capacity is assigned, and keep Module 0 open as your setup reference. You'll create your workspace and items in M1–M3.

10 min · UI tour, sanity checks
Setup
MODULE 1

Workspace Tour & Solution Architecture

Walk through the UrbanPulse multi-tenant architecture, OneLake explorer, capacity, RBAC, and the medallion model you'll build today.

30 min · concepts + UI tour
Setup
MODULE 2

Data Ingestion

Bring in file-based, relational, and NoSQL data using three Fabric ingest patterns - Upload a facility catalog Parquet, Mirror an Azure SQL Hospitals/Wards/Staff DB with zero-ETL, and Mirror a Cosmos DB for NoSQL database (regions and train routes) - all converging on one Bronze Lakehouse.

45 min · Upload + Shortcut + Mirror
Goal 1 · Ingest
MODULE 3

Real-Time Streaming Ingest

Stand up three Eventstreams routing live data from Event Hubs into a Fabric Eventhouse - hospital vitals, hospital movement, Metra trains.

75 min · Event Hubs → Eventstream → Eventhouse
Goal 1 · Ingest
MODULE 4

Transform for Analytics

Curate the Bronze tables into a Silver Delta table with a Spark notebook, then expose Gold-tier SQL views on the Lakehouse SQL endpoint for downstream BI and agents. Dataflow Gen2 and Materialized Lake Views are noted as alternatives.

40 min · Notebook + SQL views + MLV
Goal 2 · Transform
MODULE 5

Live Dashboard

Write KQL across hospital and transit tables. Pin live tiles to a Real-Time Intelligence Dashboard and watch the city update in front of you.

60 min · KQL + RTI Dashboard
Goal 3 · Build Report
MODULE 6

Direct Lake + Power BI

Build a Direct Lake semantic model on the Bronze Lakehouse and ship a 1-page Power BI report - no import refresh, no DirectQuery latency.

30 min · Direct Lake + Power BI
Goal 3 · Build Report
MODULE 7

Fabric Ontologies

Build a semantic graph over your Lakehouse + Eventhouse data. Define Patients, Trains, and the cross-domain Region anchor that powers the agents you'll build next.

25 min · Fabric Ontology · OneLake
Goal 4 · Apply AI
MODULE 8

Build a Fabric Data Agent

Build the Hospital Operations Fabric Data Agent on live KQL data and validate it in the Fabric agent canvas with natural-language questions.

45 min · Fabric Data Agents
Goal 4 · Apply AI
MODULE 9 · OPTIONAL

Multi-Agent Catalog

Repeat the Module 8 pattern for Transit so you finish with a two-agent multi-domain catalog ready for orchestration.

20 min · Fabric Data Agents
Goal 4 · Apply AI
MODULE 10 · OPTIONAL

Foundry Connected-Agent Orchestrator

Wire your Fabric Data Agents into an Azure AI Foundry connected-agent orchestrator for cross-domain reasoning. No code.

30 min · Azure AI Foundry
Goal 4 · Apply AI
MODULE 11 · OPTIONAL

Azure DevOps & Fabric Git Integration

Connect your workspace to an Azure DevOps Git repository, commit the Fabric items to a branch, and update the workspace from Git.

30 min · Fabric Git integration
Goal 5 · Source Control

What You'll Build

Architecture diagram
Figure 1 - UrbanPulse end-to-end architecture: streaming ingest, medallion lakehouse, real-time analytics, semantic model, and an orchestrated multi-agent layer.
START HERE →

Module 0 · Environment Check

Sign in to Fabric, open your pre-provisioned workspace, then we begin.