Forum Discussion
Eventstream vs Eventhouse
- 6 months ago
Hello Srisakthi ,
Welcome to this Microsoft Fabric community forum.
You want to understand the purpose of an Eventstream compared to an Eventhouse.
The Microsoft Fabric Eventhouse is a timeseries database cluster with KQL database for storing and querying timeseries data.
For getting data into the database in a streaming solution, an external source must present data either via a programmatic way (eg. behind the Get data options) or via a 'direct connection' (eg. via an eventstream) to an Eventhouse data stream.
So the flow will look like:
[some data source, eg. weather data] -> [Eventstream source] -> [optional Eventstream transformations] -> [Eventstream destination, Eventhouse with direct ingest] -> [Eventhouse datastream] -> [Eventhouse internal batching mechanism with optional streaming ingest] -> [Eventhouse KQL Database table with column mapping]This flow gives full control over the table column mapping.
An alternative is:
[some data source, eg. weather data] -> [Eventstream source] -> [optional Eventstream transformations] -> [Eventstream destination, Eventhouse with 'Event processing before ingestion'] -> [Eventhouse internal batching mechanism with optional direct ingest] -> [Eventhouse KQL Database table]To be more specific, Eventstream is (mostly) based on Azure Stream Analytics jobs and Eventhouse is based on Azure Data Explorer. The first alternative is based on an Azure Stream Analytics job Eventhub output, connected to an Eventhub, connected to a Azure Data Explore database data connection. The last alternative is based on an Azure Stream Analytics job Azure Data Explorer output.
At least, this is my mental model for comparing those two destinations.
Sorry for getting too technical but the bottom line is that an Eventhouse is not directly capable in ingesting data, it needs outside help for getting data into the database. This can be done by hand (like in the UI) or via an Eventstream).
---
If this answer helps you, a thumbs-up or marking it as accepted answer is appreaciated. All community members with similar questions will benefit by doing so. Your contribution is highly appreciated.
Hello Srisakthi ,
Welcome to this Microsoft Fabric community forum.
You want to understand the purpose of an Eventstream compared to an Eventhouse.
The Microsoft Fabric Eventhouse is a timeseries database cluster with KQL database for storing and querying timeseries data.
For getting data into the database in a streaming solution, an external source must present data either via a programmatic way (eg. behind the Get data options) or via a 'direct connection' (eg. via an eventstream) to an Eventhouse data stream.
So the flow will look like:
[some data source, eg. weather data] -> [Eventstream source] -> [optional Eventstream transformations] -> [Eventstream destination, Eventhouse with direct ingest] -> [Eventhouse datastream] -> [Eventhouse internal batching mechanism with optional streaming ingest] -> [Eventhouse KQL Database table with column mapping]
This flow gives full control over the table column mapping.
An alternative is:
[some data source, eg. weather data] -> [Eventstream source] -> [optional Eventstream transformations] -> [Eventstream destination, Eventhouse with 'Event processing before ingestion'] -> [Eventhouse internal batching mechanism with optional direct ingest] -> [Eventhouse KQL Database table]
To be more specific, Eventstream is (mostly) based on Azure Stream Analytics jobs and Eventhouse is based on Azure Data Explorer. The first alternative is based on an Azure Stream Analytics job Eventhub output, connected to an Eventhub, connected to a Azure Data Explore database data connection. The last alternative is based on an Azure Stream Analytics job Azure Data Explorer output.
At least, this is my mental model for comparing those two destinations.
Sorry for getting too technical but the bottom line is that an Eventhouse is not directly capable in ingesting data, it needs outside help for getting data into the database. This can be done by hand (like in the UI) or via an Eventstream).
---
If this answer helps you, a thumbs-up or marking it as accepted answer is appreaciated. All community members with similar questions will benefit by doing so. Your contribution is highly appreciated.