Kusto / Azure数据资源管理器中的约束元信息

问题描述

对于我们的某些日志,我们具有以下架构:

  1. 收集事件的“主”事件表。每个事件都有一个唯一的ID(guid)。
  2. 对于每个事件,我们都会收集其他IoT数据(传感器数据),其中还包含Guid作为事件表的链接

现在,我们经常看到有人从IoT数据开始然后想要查询主事件表的模式。联接或查询条件是向导。现在,由于我们拥有大量数据,因此无条件查询当然不会在短时间内返回。

现在,我们的分析师所做的就是将时间范围用作因素。通常,传感器数据是指在同一天或+/-几个小时或几分钟或几秒钟内发生的事件(取决于事件)。该查询通常返回,但并不总是尽可能快。鉴于guid是唯一的,因此明确声明该知识的查询通常比不包含该查询查询要快得多,例如

Event_Table | where ... | take 1

不幸的是,每个人都需要记住数据的那些属性

在很长的介绍之后:Kusto中​​是否有一种方法可以在不显式写入“ take 1”的情况下加快这些查询?像这样,告诉Kusto引擎此列包含唯一键吗?我不是在说要强制执行此操作(就像数据库唯一键一样),而只是向kusto提供有关如何改进查询提示?可以以某种方式做到这一点吗?

解决方法

听起来您可以从引入服务器端功能中受益: https://docs.microsoft.com/en-us/azure/data-explorer/kusto/query/schema-entities/stored-functions

使用此方法-您可以在服务器上定义功能-用户将为该功能提供参数。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...