Module 8

Real-Time Intelligence

8.1 Eventstream in Microsoft Fabric

7 lessonsMicrosoft FabricDP-700 Track
Module 8 · Lesson 8.1

Eventstream

8.1 Eventstream in Microsoft Fabric

Eventstream in Microsoft Fabric is a real-time event ingestion, processing, and routing capability within Real-Time Intelligence.

In simple terms:

Eventstream receives continuously arriving events, optionally transforms or filters them, and sends them to one or more destinations for real-time analytics.

The easiest architecture to remember is:

SOURCE

EVENTSTREAM

PROCESS / ROUTE

DESTINATION

EVENTHOUSE

KQL

REAL-TIME DASHBOARD

1. First understand: What is an Event?

An event is something that happens at a particular point in time.

For example:

Customer purchased a product

Sensor temperature changed

Machine stopped

User clicked a website button

Payment completed

Vehicle location changed

Application generated an error

Stock price changed

Each of these can generate an event.

For example:

{

"SensorId": "S001",

"Temperature": 42.5,

"Location": "Hyderabad",

"Timestamp": "2026-08-02T10:30:15"

}

That's one event.

Now imagine the sensor generates a new reading every second:

10:30:15 → 42.5°C

10:30:16 → 42.7°C

10:30:17 → 43.1°C

10:30:18 → 43.5°C

10:30:19 → 44.0°C

This continuous flow is streaming data.

2. Batch Data vs Streaming Data

Understanding this difference is essential.

Batch processing

Suppose a company generates sales throughout the day.

At midnight:

All Today's Sales

CSV File

Pipeline

Warehouse

Power BI

You process the data periodically.

That's batch processing.

Streaming processing

Now imagine every transaction needs to be analyzed immediately:

Sale

Sale

Sale

Sale

Sale

The events continuously arrive.

Transaction

Eventstream

Real-Time Analytics

That's streaming.

3. Why do we need Eventstream?

Suppose you operate 5,000 machines.

Each machine sends:

MachineID

Temperature

Pressure

Speed

Status

Timestamp

every second.

You don't want to wait until midnight to discover:

Machine 325 reached a dangerous temperature at 10:15 AM.

Instead:

Machine

Sensor

Event

Eventstream

Detect Temperature > 90

Eventhouse

Dashboard / Action

Now you can analyze events close to when they occur.

4. Eventstream architecture

The core architecture is:

┌─────────────────────────────────────┐
│              SOURCES                │
│                                     │
│ IoT │ Apps │ Event Hubs │ CDC │ etc│
└──────────────────┬──────────────────┘
                   │
                   ▼
        ┌────────────────────┐
        │    EVENTSTREAM     │
        │                    │
        │ Ingest             │
        │ Filter             │
        │ Transform          │
        │ Route              │
        └─────────┬──────────┘
                  │
          ┌───────┼─────────┐
          ▼       ▼         ▼

Eventhouse Other Real-time

supported destinations

Think of Eventstream as a real-time data highway.

5. Three important parts

Every Eventstream architecture can be understood through three things:

EVENTSTREAM
     │
     ├── SOURCE
     │
     ├── TRANSFORMATION
     │
     └── DESTINATION

Remember:

Source → Process → Destination

6. Sources

A source is where the streaming events originate.

Depending on current Fabric support, sources can include services and change/event feeds such as:

Azure Event Hubs

Azure IoT Hub

Kafka-based sources

Fabric event sources

CDC/change streams

Sample events

Custom endpoints

For example:

IoT Sensors

Azure IoT Hub

Eventstream

Or:

Application

Azure Event Hubs

Eventstream

7. Example: IoT sensor

Suppose a factory has temperature sensors.

Sensor 001

Sensor 002

Sensor 003

Sensor 004

Each sends:

{

"machine_id": "M101",

"temperature": 92,

"pressure": 45,

"timestamp": "2026-08-02T10:30:15"

}

Architecture:

Temperature Sensors

IoT Hub

Eventstream

Eventhouse

KQL

Real-Time Dashboard

8. Eventstream transformations

Eventstream isn't only about receiving data.

You can also process events while they're flowing.

For example:

Incoming Events

Eventstream

Filter

Transform

Route

Typical operations include concepts such as:

Filter

Manage fields

Group/Aggregate

Join

Expand

Route events

The available operations depend on the current Fabric Eventstream experience.

9. Filtering events

Suppose events contain:

Machine | Temperature

--------|------------

M01 | 65

M02 | 72

M03 | 95

M04 | 68

M05 | 102

You only care about:

Temperature > 90

Eventstream can conceptually perform:

Incoming Events

Temperature > 90?

   ┌───┴───┐
   │       │
  YES      NO
   │       │
   ▼       ✕

Process Ignore

Result:

M03 | 95

M05 | 102

This reduces unnecessary downstream processing.

10. Transforming events

Suppose incoming data contains:

MachineID

Temp_Celsius

Timestamp

You may want to add:

Status

Business rule:

Temperature < 70

NORMAL

70 – 90

WARNING

> 90

CRITICAL

Result:

MachineID | Temp | Status

----------|------|---------

M01 | 65 | NORMAL

M02 | 82 | WARNING

M03 | 96 | CRITICAL

Now downstream analytics receives more meaningful events.

11. Routing events

Eventstream can route data to different destinations.

Imagine:

                    Eventstream
                         │
          ┌──────────────┼──────────────┐
          │              │              │
          ▼              ▼              ▼
     All Events      Critical       Processed
          │           Events          Events
          ▼              ▼              ▼

Eventhouse Destination Destination

For example:

Temperature < 90

Normal Processing

Temperature >= 90

Critical Stream

This allows you to build different real-time paths.

12. Destination

After processing events, Eventstream sends them to a destination.

For your Real-Time Intelligence syllabus, the most important destination to understand is:

Eventhouse

Eventstream

Eventhouse

KQL Database

KQL Query

Real-Time Dashboard

This is the architecture you should remember for Module 8.

13. What is Eventhouse?

You'll study this in 8.2, but you need the basic idea now.

Eventstream handles the movement/processing of events.

Eventhouse stores and serves real-time/event data for analytics.

Think:

Eventstream

=

MOVE / PROCESS EVENTS

Eventhouse

=

STORE / ANALYZE EVENT DATA

So:

Events

Eventstream

Eventhouse

14. What is KQL?

You'll study 8.3 KQL separately.

KQL stands for:

Kusto Query Language

It's designed for fast analysis of large volumes of telemetry, log, time-series, and event data.

For example:

MachineEvents

| where Temperature > 90

| project MachineId, Temperature, Timestamp

Conceptually:

Eventhouse

MachineEvents

KQL

Temperature > 90

Critical Machines

15. Eventstream vs Eventhouse vs KQL

This is the most important distinction in this module.

ComponentPurpose
EventstreamIngest, transform and route events
EventhouseStore and serve event/real-time data
KQLQuery and analyze the data
Real-Time DashboardVisualize the results

Easy memory:

EVENTSTREAM

Move Events

EVENTHOUSE

Store Events

KQL

Query Events

DASHBOARD

Visualize Events

16. Complete Real-Time Intelligence flow

REAL WORLD

     Machine       Website       Application
        │             │               │
        ▼             ▼               ▼
      Sensor         Click            Log
        │             │               │
        └─────────────┼───────────────┘
                      ▼
                 EVENT SOURCE
                      │
                      ▼
                EVENTSTREAM
                      │
              ┌───────┼───────┐
              │       │       │
            Filter Transform Route
              │       │       │
              └───────┼───────┘
                      ▼
                 EVENTHOUSE
                      │
                      ▼
                 KQL DATABASE
                      │
                      ▼
                     KQL
                      │
                      ▼
             REAL-TIME DASHBOARD
                      │
                      ▼

BUSINESS USER

If you understand this diagram, you understand the basic architecture of Module 8.

17. Real-world example: E-commerce

Imagine Amazon-like online shopping.

Customers continuously perform:

Product View

Add to Cart

Remove from Cart

Purchase

Payment

Search

Login

Each action generates an event.

For example:

{

"customer_id": 1001,

"event": "AddToCart",

"product_id": 5005,

"timestamp": "2026-08-02T18:45:20"

}

Architecture:

Website

Customer Actions

Eventstream

Eventhouse

KQL

Real-Time Dashboard

Now the company can see:

Users Online

Orders / Minute

Sales / Minute

Top Products

Cart Abandonment

Payment Failures

in near real time.

18. Real-world example: Banking

Imagine credit-card transactions.

Card Swipe

Transaction Event

Eventstream

Eventhouse

KQL

You could analyze:

Multiple transactions in seconds

Unusual transaction amount

Transactions from unusual locations

Repeated payment failures

Architecture:

Transactions

Eventstream

Filter / Process

Eventhouse

KQL Analysis

Real-Time Monitoring

19. Real-world example: Application monitoring

Suppose an application generates logs:

INFO

WARNING

ERROR

CRITICAL

Every second:

10:30:01 INFO

10:30:02 INFO

10:30:03 ERROR

10:30:04 INFO

10:30:05 CRITICAL

Architecture:

Application

Logs

Eventstream

Eventhouse

KQL

Query:

ApplicationLogs

| where Level == "ERROR"

or:

ApplicationLogs

| where Level == "CRITICAL"

Then visualize those events in a real-time dashboard.

20. Real-world example: Azure Data Platform monitoring

For a data engineering environment, imagine continuously receiving:

Pipeline Started

Pipeline Completed

Pipeline Failed

Notebook Started

Notebook Failed

Dataflow Failed

You could build:

Fabric / Azure Events

Eventstream

Eventhouse

KQL

Real-Time Operations Dashboard

Dashboard:

Pipeline Success Rate

Failed Pipelines

Running Pipelines

Average Duration

Failures by Workspace

Failures by Error Type

This is a very practical Real-Time Intelligence use case.

21. Eventstream vs Data Factory Pipeline

This is an important distinction.

Data Factory Pipeline

Typically used for:

Batch Data

Scheduled ETL

Data Copy

Orchestration

Example:

Every night 2 AM

Pipeline

Copy Sales

Warehouse

Eventstream

Used for:

Continuous Events

Streaming Data

Near-real-time Processing

Event Routing

Example:

Sale

Sale

Sale

Eventstream

Real-Time Analytics

So:

PipelineEventstream
Batch/orchestration orientedStreaming/event oriented
Scheduled workflows commonContinuous flow
Copy/ETL activitiesEvent ingestion/routing
Minutes/hours/day patternsSeconds/near-real-time patterns
Lakehouse/Warehouse targets commonReal-Time Intelligence destinations

22. Eventstream vs Dataflow Gen2

Don't confuse these either.

Dataflow Gen2

=

Power Query

Batch/ETL transformation

Eventstream

=

Streaming event processing

For example:

CSV File

Dataflow Gen2

Clean Customer Data

versus:

IoT Sensor

Continuous Events

Eventstream

Real-Time Processing

23. Eventstream vs Kafka

If you already know Kafka, the concepts may feel familiar.

Both deal with streaming/event data, but they are different products and architectures.

Conceptually:

Producer

Streaming Platform

Consumer

Fabric Eventstream provides a managed, low-code experience for connecting, processing and routing real-time event streams within the Fabric ecosystem.

24. Batch architecture vs Real-Time architecture

Traditional Fabric batch analytics

SQL Server

Data Factory

Lakehouse

Warehouse

Power BI

Fabric Real-Time Intelligence

Streaming Source

Eventstream

Eventhouse

KQL

Real-Time Dashboard

You should know both architectures.

25. When should we use Eventstream?

Use Eventstream when data is:

✓ Continuously generated

✓ Time-sensitive

✓ Event-based

✓ High frequency

✓ Required quickly for analytics

Typical use cases:

IoT sensors

Application logs

Website clickstream

Financial transactions

Vehicle telemetry

Manufacturing equipment

Stock/market events

Security monitoring

Operational monitoring

26. When is Eventstream unnecessary?

If you receive:

One Excel file

Every Monday

you probably don't need Eventstream.

Use something like:

File

Pipeline / Dataflow

Lakehouse / Warehouse

Similarly, if the business says:

"Our report only needs to refresh once every night."

a batch architecture may be simpler.

Don't use streaming just because the technology exists.

27. Simulating events for learning

Your syllabus includes:

8.6 Simulate Streaming Data

This is useful because you probably don't have 1,000 physical IoT devices available for training.

Instead, you can generate sample events:

Sample Data Generator

Temperature = random

Machine = random

Timestamp = current

Event

Eventstream

For example:

{

"machine_id": "M102",

"temperature": 87.4,

"pressure": 43.2,

"timestamp": "2026-08-02T20:15:01"

}

Then another:

M102 → 87°C

M103 → 72°C

M101 → 95°C

M104 → 67°C

M101 → 102°C

...

This allows you to practice the complete architecture without real devices.

28. Your Module 8 learning sequence

Your syllabus is actually in a good order.

8.1 EVENTSTREAM
       │
       │ Learn how events enter Fabric
       ▼
8.2 EVENTHOUSE
       │
       │ Learn where events are stored/analyzed
       ▼
8.3 KQL
       │
       │ Learn how to query events
       ▼
8.4 STREAMING DATA
       │
       │ Understand streaming concepts
       ▼
8.5 DASHBOARDS
       │
       │ Visualize real-time information
       ▼
8.6 SIMULATE STREAMING DATA
       │
       │ Generate practical events
       ▼
8.7 QUERY WITH KQL
       │
       ▼

END-TO-END PROJECT

29. Interview question: What is Eventstream?

A strong answer is:

Eventstream is a real-time event ingestion, transformation, and routing capability in Microsoft Fabric Real-Time Intelligence. It can receive continuously generated events from supported sources, apply stream-processing operations such as filtering and transformation, and route the events to destinations such as an Eventhouse for real-time analysis using KQL.

30. Interview question: Eventstream vs Eventhouse?

Answer:

Eventstream is responsible primarily for ingesting, processing, and routing streaming events, whereas Eventhouse is designed to store and serve large volumes of event and time-series data for real-time analytics. Eventhouse data can then be queried using KQL.

Remember:

Eventstream

=

TRANSPORT / PROCESS

Eventhouse

=

STORE / ANALYZE

31. Quick revision

EVENTSTREAM
==============================
Purpose
-------

Real-Time Event Processing

Input
-----

Streaming Events

Sources
-------

IoT

Applications

Event Hubs

Kafka

CDC

Other supported sources

Operations
----------

Ingest

Filter

Transform

Route

Destination
-----------

Eventhouse

Other supported destinations

Query
-----

KQL

Visualization
-------------

Real-Time Dashboard

One diagram to remember for the entire module

REAL-TIME DATA

      IoT Sensors
           │
      Applications
           │
      Transactions
           │
      Website Events
           │
           ▼
      ┌─────────────┐
      │ EVENTSTREAM │
      │             │
      │   INGEST    │
      │   FILTER    │
      │  TRANSFORM  │
      │    ROUTE    │
      └──────┬──────┘
             │
             ▼
      ┌─────────────┐
      │ EVENTHOUSE  │
      │             │
      │ STORE EVENT │
      │    DATA     │
      └──────┬──────┘
             │
             ▼
            KQL
             │
             ▼
      REAL-TIME DASHBOARD
             │
             ▼

BUSINESS USER

The one line to memorize

Eventstream receives the events → Eventhouse stores them → KQL analyzes them → Dashboard visualizes them.

That single flow will make the rest of Module 8: Real-Time Intelligence much easier to understand.

8.2 Eventhouse

8.2 Eventhouse in Microsoft Fabric

Eventhouse is a Microsoft Fabric Real-Time Intelligence item designed to store, manage, and analyze large volumes of event, telemetry, log, and time-series data.

The easiest way to understand it is:

Eventstream brings the events → Eventhouse stores and serves the events → KQL analyzes them → Dashboard visualizes them.

Streaming Source

Eventstream

Eventhouse

KQL Database

KQL Query

Real-Time Dashboard

1. Why do we need Eventhouse?

Imagine a factory with 10,000 sensors.

Every second, they generate:

MachineID

Temperature

Pressure

Speed

Status

Timestamp

Events continuously arrive:

10:30:01 → M001 → 72°C

10:30:01 → M002 → 85°C

10:30:01 → M003 → 91°C

10:30:02 → M001 → 73°C

10:30:02 → M002 → 86°C

10:30:02 → M003 → 95°C

...

That's potentially millions or billions of time-based events.

We need somewhere optimized to store and query this type of data.

That's where Eventhouse comes in.

Millions of Events

Eventhouse

Fast Event Analytics

2. Eventstream vs Eventhouse

This is the first distinction you should understand.

Eventstream

Responsible for:

Receive

Process

Route

Eventhouse

Responsible for:

Store

Manage

Query

Analyze

Think about water:

Water Source

Pipe

Tank

In this analogy:

Events

=

Water

Eventstream

=

Pipe

Eventhouse

=

Tank

Then KQL is how you examine and analyze what's in the tank.

3. Eventhouse Architecture

A simplified Fabric Real-Time Intelligence architecture is:

┌───────────────────────────────────────────┐
│                SOURCES                    │
│                                           │
│ IoT │ Apps │ Logs │ Events │ Transactions│
└────────────────────┬──────────────────────┘
                     │
                     ▼
              ┌─────────────┐
              │ EVENTSTREAM │
              │             │
              │ Ingest      │
              │ Transform   │
              │ Route       │
              └──────┬──────┘
                     │
                     ▼

╔═══════════════════════════════════════════╗

║ EVENTHOUSE ║

║ ║

║             ┌─────────────────┐           ║
║             │  KQL DATABASE   │           ║
║             │                 │           ║
║             │   TABLES        │           ║
║             │                 │           ║
║             │ MachineEvents   │           ║
║             │ AppLogs         │           ║
║             │ Transactions    │           ║
║             └────────┬────────┘           ║

╚══════════════════════╪════════════════════╝

                       │
                       ▼
                      KQL
                       │
                       ▼

Real-Time Dashboard

4. Eventhouse and KQL Database

An Eventhouse can contain KQL databases.

Conceptually:

Eventhouse
    │
    ├── KQL Database A
    │      │
    │      ├── MachineEvents
    │      ├── SensorReadings
    │      └── Alerts
    │
    └── KQL Database B
           │
           ├── ApplicationLogs
           └── SecurityEvents

For example:

Factory_Eventhouse
      │
      ▼
Factory_KQL_DB
      │
      ├── MachineEvents
      ├── TemperatureEvents
      ├── PressureEvents
      └── MachineAlerts

5. What is a KQL Database?

A KQL Database is a database optimized for analytical workloads involving data such as:

Logs

Telemetry

Time-Series Data

IoT Data

Application Events

Operational Events

Clickstream Data

The data can then be queried using Kusto Query Language (KQL).

Eventhouse

KQL Database

Tables

KQL

6. Tables inside Eventhouse

Suppose we create:

FactoryDB

Inside it:

FactoryDB
│
├── MachineEvents
├── TemperatureReadings
├── PressureReadings
└── MachineAlerts

MachineEvents might contain:

TimestampMachineIDTemperaturePressureStatus
10:30:01M0017240Normal
10:30:02M0028544Warning
10:30:03M0039551Critical
10:30:04M0017341Normal

Now you can analyze it with KQL.

7. Querying Eventhouse with KQL

Suppose we want all machine events.

MachineEvents

That's a valid starting point in KQL.

Now filter:

MachineEvents

| where Temperature > 90

Conceptually:

MachineEvents

WHERE Temperature > 90

Critical Machines

8. KQL pipe |

If you are coming from SQL, the KQL pipe is important.

KQL often works like:

Table
  |

Filter
  |

Select
  |

Aggregate
  |

Result

Example:

MachineEvents

| where Temperature > 90

| project Timestamp, MachineID, Temperature

Read it as:

Take MachineEvents → filter temperature > 90 → return selected columns.

9. SQL vs KQL

Since you work with SQL, this comparison will make KQL easier.

SQL

SELECT

MachineID,

Temperature

FROM MachineEvents

WHERE Temperature > 90;

KQL

MachineEvents

| where Temperature > 90

| project MachineID, Temperature

Same idea, different syntax.

Think:

SQL

SELECT

FROM

WHERE

GROUP BY

KQL

Table

| where

| project

| summarize

10. Aggregation with KQL

Suppose we want average temperature by machine.

SQL:

SELECT
    MachineID,
    AVG(Temperature)
FROM MachineEvents
GROUP BY MachineID;

KQL:

MachineEvents

| summarize AvgTemperature = avg(Temperature) by MachineID

Result:

MachineIDAvgTemperature
M00172.5
M00284.7
M00394.2

11. Time is extremely important

Eventhouse is particularly suited to time-oriented analytical data.

Most event datasets have something like:

Timestamp

EventTime

CreatedTime

LogTime

TransactionTime

For example:

10:30:01

10:30:02

10:30:03

10:30:04

...

This allows questions such as:

What happened in the last 5 minutes?

How many errors occurred in the last hour?

What's the average temperature every minute?

How many transactions occurred per second?

Which machines failed today?

12. Querying recent data

For example:

MachineEvents

| where Timestamp > ago(10m)

Meaning:

Give me events from approximately the last 10 minutes.

Then:

MachineEvents

| where Timestamp > ago(10m)

| where Temperature > 90

Meaning:

Show machines with temperature above 90 during the last 10 minutes.

This is exactly the kind of query Eventhouse is designed for.

13. Time-based aggregation

Suppose events arrive every second.

10:30:01

10:30:02

10:30:03

...

But your dashboard needs:

Average temperature every 5 minutes.

KQL can perform time-based aggregation.

For example:

MachineEvents

| summarize AvgTemperature = avg(Temperature)

by bin(Timestamp, 5m)

Conceptually:

Individual Events

Group into 5-minute windows

Calculate Average

Dashboard

14. Eventhouse is not only IoT

A common misconception is:

Eventhouse = IoT database.

No.

IoT is only one use case.

Eventhouse can handle:

IoT Telemetry

Application Logs

Website Clickstream

Security Events

Financial Transactions

Vehicle Telemetry

Infrastructure Monitoring

Operational Events

Business Events

Network Logs

15. Application log example

Suppose your application produces:

Timestamp | Level | Service | Message

----------|----------|---------|----------------

10:30:01 | INFO | API | Request received

10:30:02 | ERROR | DB | Connection failed

10:30:03 | INFO | API | Request completed

10:30:04 | CRITICAL | Payment | Payment service down

Store this in:

Eventhouse

ApplicationDB

ApplicationLogs

Query:

ApplicationLogs

| where Level == "ERROR"

Or:

ApplicationLogs

| where Level == "CRITICAL"

16. Count errors

You could write:

ApplicationLogs

| where Level == "ERROR"

| summarize ErrorCount = count()

Or count by service:

ApplicationLogs

| where Level == "ERROR"

| summarize ErrorCount = count() by Service

Result:

Service     Errors
------------------

API 15

Database 32

Payment 47

Authentication 8

Now you have real-time operational analytics.

17. Banking example

Imagine:

Credit Card Transactions

Eventstream

Eventhouse

Transactions Table

Table:

TransactionID

CustomerID

Amount

Location

Merchant

Timestamp

Status

You could query high-value transactions:

Transactions

| where Amount > 100000

Or failed transactions:

Transactions

| where Status == "Failed"

Then show them in a dashboard.

18. Website analytics example

Imagine an e-commerce website.

Users continuously generate:

PageView

Search

ProductView

AddToCart

Purchase

Logout

Architecture:

Website

Events

Eventstream

Eventhouse

WebEvents

KQL

Now you can calculate:

Active users

Views/minute

Products viewed

Cart additions

Purchases/minute

Failed payments

19. Eventhouse vs Fabric Warehouse

This is a very important distinction.

Fabric Warehouse

Best suited to:

Structured Business Data

Fact Tables

Dimension Tables

Star Schema

Financial Reporting

Sales Reporting

BI Analytics

Typical language:

T-SQL

Eventhouse

Best suited to:

Events

Logs

Telemetry

Time-Series

Streaming Data

Operational Analytics

Typical language:

KQL

20. Warehouse vs Eventhouse comparison

Fabric WarehouseEventhouse
Structured analytical dataEvent/time-series/log data
T-SQLKQL
Fact & Dimension tablesEvent tables
Star Schema commonTime-oriented/event model
Traditional BI analyticsReal-time/operational analytics
Sales/Finance/HRIoT/Logs/Telemetry
Batch/analytical workloadsStreaming + real-time workloads

Easy memory:

WAREHOUSE

=

Business Analytics

EVENTHOUSE

=

Event Analytics

21. Eventhouse vs Lakehouse

Another important distinction:

Lakehouse

General-purpose analytical storage:

Files

Delta Tables

Structured Data

Semi-Structured Data

Spark

SQL

Eventhouse

Specialized for:

Events

Logs

Telemetry

Time-Series

High-volume event analytics

KQL

So:

Lakehouse

=

Data Engineering

Warehouse

=

SQL Analytics

Eventhouse

=

Real-Time Event Analytics

That's a useful Fabric mental model.

22. Eventhouse vs Eventstream

Another way to remember:

                    EVENT DATA
                        │
                        ▼
                  EVENTSTREAM
                        │
                  Transport Layer
                        │
                        ▼
                   EVENTHOUSE
                        │

Storage +

                    Analytics
                        │
                        ▼

KQL

Eventstream does not replace Eventhouse.

Eventhouse does not replace Eventstream.

They work together.

23. Batch vs Real-Time architecture

Your earlier Fabric modules might use:

BATCH ARCHITECTURE

SQL Server

Data Factory

Lakehouse

Warehouse

Power BI

Real-Time Intelligence can use:

REAL-TIME ARCHITECTURE

Streaming Source

Eventstream

Eventhouse

KQL

Real-Time Dashboard

This distinction is worth memorizing.

24. Eventhouse and dashboards

Once data is in Eventhouse:

Eventhouse

KQL

Query Results

Real-Time Dashboard

For example, a factory dashboard could show:

┌─────────────────────────────────────┐
│      FACTORY MONITORING             │
├─────────────────────────────────────┤
│                                     │
│ Active Machines        975          │
│ Failed Machines         25          │
│ Critical Temperature    17          │
│ Average Temperature     74°C         │
│                                     │
├─────────────────────────────────────┤
│ Temperature Trend                   │
│                                     │
│     /\     /\                       │
│ ___/  \___/  \_____                 │
│                                     │
├─────────────────────────────────────┤
│ Critical Machines                   │
│                                     │
│ M103     102°C                      │
│ M405      98°C                      │
│ M725      96°C                      │
└─────────────────────────────────────┘

The underlying flow is:

Sensors

Eventstream

Eventhouse

KQL

Dashboard

25. How this fits your Module 8

Your module now becomes much easier:

8.1 EVENTSTREAM
       │
       │
       │ Bring Events
       ▼
8.2 EVENTHOUSE
       │
       │
       │ Store Events
       ▼
8.3 KQL
       │
       │
       │ Query Events
       ▼
8.4 STREAMING DATA
       │
       ▼
8.5 DASHBOARDS
       │
       │
       │ Visualize Events
       ▼
8.6 SIMULATE STREAMING DATA
       │
       │
       │ Generate Events
       ▼

8.7 QUERY WITH KQL

26. Complete example

Suppose we want to monitor taxis.

Every taxi sends:

{

"TaxiID": "T101",

"Latitude": 17.385,

"Longitude": 78.4867,

"Speed": 65,

"Timestamp": "2026-08-02T20:30:15"

}

Events continuously arrive:

T101 → 65 km/h

T102 → 72 km/h

T103 → 95 km/h

T104 → 45 km/h

Architecture:

                 TAXIS
                   │
                   ▼
              GPS EVENTS
                   │
                   ▼
             EVENTSTREAM
                   │
                   ▼
              EVENTHOUSE
                   │
                   ▼
               TaxiEvents
                   │
                   ▼

KQL

Query speeding taxis:

TaxiEvents

| where Speed > 80

| project TaxiID, Speed, Timestamp

Then:

KQL

Real-Time Dashboard

Operations Team

That's an end-to-end Eventhouse use case.

27. Interview question — What is Eventhouse?

A strong answer is:

Eventhouse is a Microsoft Fabric Real-Time Intelligence item designed for storing, managing, and analyzing large volumes of event-based, telemetry, log, and time-series data. It works with KQL databases and enables fast analytical querying using Kusto Query Language. Streaming events can be ingested through capabilities such as Eventstream and then analyzed and visualized through KQL queries and Real-Time Dashboards.

28. Interview question — Eventstream vs Eventhouse

A simple answer:

Eventstream is primarily responsible for ingesting, transforming, and routing streaming events, whereas Eventhouse provides the storage and analytical environment for those events. Once data is stored in an Eventhouse KQL database, we can analyze it using KQL.

Remember:

EVENTSTREAM

=

Bring the data

EVENTHOUSE

=

Store the data

KQL

=

Analyze the data

DASHBOARD

=

Show the data

29. Interview question — Eventhouse vs Warehouse

Fabric Warehouse is designed primarily for structured relational analytical workloads and is queried using T-SQL, while Eventhouse is optimized for high-volume event, telemetry, log, and time-series analytics and is primarily queried using KQL.

Easy memory:

Warehouse

Fact / Dimension

T-SQL

Eventhouse

Events / Logs

KQL

30. Quick revision

EVENTHOUSE
================================
Part of
-------

Real-Time Intelligence

Purpose
-------

Store and analyze

real-time/event data

Best for
--------

Events

Logs

Telemetry

Time-Series

IoT

Clickstream

Operational Data

Contains
--------

KQL Databases

Query Language
--------------

KQL

Common Input
------------

Eventstream

Visualization
-------------

Real-Time Dashboard

One diagram to remember

REAL WORLD

       IoT / Apps / Logs
              │
              ▼
       ┌───────────────┐
       │  EVENTSTREAM  │
       │               │
       │ Bring Events  │
       └───────┬───────┘
               │
               ▼

╔═══════════════╗

║ EVENTHOUSE ║

║ ║

║ Store Events ║

║ ║

║ KQL DATABASE ║

       ║       │       ║
       ║       ▼       ║

║ TABLES ║

╚═══════╤═══════╝

               │
               ▼
              KQL
               │
               ▼
       REAL-TIME DASHBOARD
               │
               ▼

BUSINESS USER

Key takeaway

For 8.2 Eventhouse, remember these four words:

Eventstream → Eventhouse → KQL → Dashboard

Or even simpler:

Eventstream brings it. Eventhouse stores it. KQL queries it. Dashboard shows it.

↑ Back to top
Module 8 · Lesson 8.3

KQL

Module 8 · Lesson 8.3

Module 8 · Lesson 8.4

Streaming Data

Module 8 · Lesson 8.5

Dashboards

Module 8 · Lesson 8.6

Simulate Streaming Data

Module 8 · Lesson 8.7

Query with KQL