ADE Azure Data Explorer
Azure Data Explorer, often shortened to ADX, is a high-speed analytics service built for logs, metrics, and time-stamped events. It ingests streams of data and answers questions across billions of rows in seconds. The same engine powers several Microsoft monitoring products, which shows how well it handles heavy telemetry.
The Idea in Plain Words
Imagine a security guard who reviews camera footage. Searching a whole night of footage by hand takes hours. A smart index that jumps straight to "motion near the gate between 2 AM and 3 AM" takes seconds. ADX acts like that index for data, and the query language lets you ask the question in a single line.
Core Building Blocks
- Cluster: The group of machines that stores and queries data.
- Database: A named collection of tables inside a cluster.
- Table: A set of rows with typed columns, stored in a compressed column layout.
- Ingestion: The process of loading data into a table from Event Hubs, IoT Hub, Blob Storage, ADF, and other sources.
- Cache policy: A setting that keeps recent data on fast storage and older data on cheaper storage.
- Retention policy: A setting that deletes data after a chosen period.
Data Flow Overview
Delivery trucks (GPS and engine sensors)
|
v
Event Hubs
|
v
ADX ingestion ---> Table: TruckTelemetry
|
+---------------+---------------+
| |
Kusto queries Power BI and Grafana
(ad-hoc analysis) dashboards
Kusto Query Language
ADX uses Kusto Query Language, or KQL. A KQL query reads like a pipeline. Each step passes its result to the next step through the pipe symbol, which looks like a vertical bar.
FleetFast, a fictional delivery company, stores truck readings in a table named TruckTelemetry with columns Timestamp, TruckId, SpeedKmh, and EngineTempC.
TruckTelemetry
| where Timestamp > ago(1h)
| where EngineTempC > 105
| summarize HotReadings = count() by TruckId
| order by HotReadings desc
| take 10The query reads the last hour of data, keeps readings above 105 degrees, counts them per truck, sorts the counts, and shows the top ten trucks. A maintenance team uses this answer to inspect the hottest engines.
Time Series Magic
TruckTelemetry
| where Timestamp > ago(24h)
| summarize AvgSpeed = avg(SpeedKmh) by bin(Timestamp, 15m)
| render timechartThe bin function groups timestamps into 15-minute buckets. The render command draws a line chart directly in the query window.
KQL and SQL Side by Side
| Task | SQL | KQL |
|---|---|---|
| Filter rows | WHERE | where |
| Pick columns | SELECT | project |
| Group and total | GROUP BY with SUM | summarize sum() by |
| Sort | ORDER BY | order by |
| Limit rows | TOP or LIMIT | take |
| Add a column | Expression in SELECT | extend |
Hot and Cold Data
Fresh data answers most questions, and old data answers a few. A hot cache keeps the latest 30 days on fast storage. Older data stays on cheaper storage and still responds to queries, though a little more slowly. This split trims cost without deleting history.
Strong Use Cases
- Application and security log analysis
- IoT and sensor telemetry
- Clickstream and usage analytics
- Near real-time dashboards
Where ADX Fits Among Azure Tools
| Tool | Strength |
|---|---|
| Azure Data Explorer | Interactive queries over huge time-stamped data |
| Azure Synapse | Classic data warehouse and large joins |
| Stream Analytics | Continuous in-flight calculations |
| Fabric Eventhouse | Real-Time Intelligence in Microsoft Fabric, based on the same engine family |
Key Points
- ADX stores telemetry and answers questions across billions of rows in seconds.
- KQL builds queries as a readable pipeline of steps.
- Cache and retention policies balance speed against cost.
- Event Hubs, IoT Hub, and ADF feed data into ADX tables.
