存储和查询实时数据
Eventhouse 是存储实时数据的位置,通常由 Eventstream 引入并加载到表中以供进一步处理和分析。
在 Eventhouse 中,可以创建:
- KQL 数据库:实时优化的数据存储,用于托管表、存储函数、具体化视图和快捷方式的集合。
- KQL 查询集:可用于处理 KQL 数据库表中数据的 KQL 查询集合。 KQL 查询集支持使用 Kusto 查询语言 (KQL) 和 Transact-SQL 语言子集编写的查询。
查询数据
要从 KQL 数据库中的表查询数据,可使用 Kusto 查询语言 (KQL),它用于在 Azure 数据资源管理器、Azure Monitor Log Analytics、Microsoft Sentinel 和 Microsoft Fabric 中编写查询。 KQL 是处理数据并返回结果的只读请求。 KQL 查询由一个或多个查询语句组成。
KQL 查询语句
查询语句包含一个表名称,后跟一个或多个运算符,这些运算符对数据执行 take
、filter
、transform
aggregate
、 或 join
操作。 例如,以下查询从名为 stock 的表中检索 10 行:
stock
| take 10
更复杂的示例可能会聚合数据,以找出过去五分钟内每个股票代码的平均股价:
stock
| where ["time"] > ago(5m)
| summarize avgPrice = avg(todecimal(bidPrice)) by symbol
| project symbol, avgPrice
提示
要详细了解 KQL,请参阅 Kusto 查询语言 (KQL) 概述。
使用 SQL
KQL 针对查询大量数据(尤其是基于时间的元素)进行了优化,因此它非常适合实时数据分析。 但是,许多数据专业人员已经熟悉 SQL 语法,因此,Eventhouse 中的 KQL 数据库支持一部分常见的 SQL 表达式。
例如,与之前讨论的 10 KQL 查询等效的 SQL 为:
SELECT TOP 10 * FROM stock;
使用 Copilot 帮助执行查询
Microsoft Fabric 包括用于实时智能的 Copilot,可帮助编写从 Eventhouse 数据中提取见解所需的查询。 Copilot 使用 AI 了解你要查找的信息,并可以为你生成所需的查询代码。
提示
若要详细了解用于实时智能的 Copilot,请参阅用于实时智能的 Copilot。