Real-Time Analytics Platform  ·  View 14 of 21  ·  Runtime

Query and Serving Architecture

How a query reaches an answer in under 2 seconds while dashboards, ad-hoc analysis and exports run concurrently without competing.

Editable source SVG draw.io All views
Serving tier
Serving tier
Client edge
Client edge
Azure Front Door
TLS · geo routing
Azure Front Door...
API Management
per-tenant RPS
API Management...
Query API
Container Apps · KEDA
Query API...
Acceleration
Acceleration
Azure Cache for Redis
55% hit · 30 s TTL
Azure Cache for Redis...
Materialized Views
1 min · 5 min · 1 h
Materialized Views...
KQL Functions
governed semantics
KQL Functions...
Azure Data Explorer
Azure Data Explorer
Leader Cluster
ingest and write
Leader Cluster...
Follower · Dashboards
read-only
Follower · Dashboards...
Follower · Ad-hoc
exports · notebooks
Follower · Ad-hoc...
Workload Groups
concurrency and memory caps
Workload Groups...
Consumption
Consumption
Power BI
DirectQuery
Power BI...
Managed Grafana
Managed Grafana
Gold Event Topics
Gold Event Topics
Notebooks & Ad-hoc
Notebooks & Ad-hoc
Microsoft Entra ID
on-behalf-of tokens
Microsoft Entra ID...
Microsoft Purview
column classification
Microsoft Purview...
TLS 1.3
TLS 1.3
HTTPS
HTTPS
cache lookup · 15 ms
cache lookup · 15 ms
miss · 350 ms
miss · 350 ms
resolved on follower
resolved on follower
attach
attach
attach
attach
DirectQuery KQL
DirectQuery KQL
ad-hoc KQL
ad-hoc KQL
Query and Serving Architecture
Query and Serving Architecture
Security / platform
Security / platform
Interface / broker
Interface / broker
Application we own
Application we own
Data store
Data store
External / third party
External / third party
Queue / topic
Queue / topic
synchronous
synchronous
Ad-hoc and export workloads never touch the cluster that serves dashboards.
Ad-hoc and export workloads never touch the cluster that serves dashboards.
v 1.0 · owner Data & AI Architecture · date 2026-08
v 1.0 · owner Data & AI Architecture · date 2026-08
Text is not SVG - cannot display

Predictable latency

  • Standard dashboard queries resolve against materialized views, not raw scans
  • Redis absorbs roughly 55% of dashboard traffic on a 30-second TTL
  • Workload groups cap concurrency and memory per class so one query cannot starve the rest

Workload separation

  • Ingestion writes to the leader; dashboards and ad-hoc each read a dedicated follower
  • Followers can be scaled independently of ingestion capacity
  • Exports and notebooks are contractually second-class and may be throttled first

Trade-off accepted

  • Follower attach lag adds a small freshness penalty on read replicas
  • That penalty is inside the 5-second budget and is measured as part of the freshness SLI
  • A truly freshest-read path exists against the leader, restricted to operational views