Kusto:对连接甚至连接条件进行全表扫描是基于时间的吗?

问题描述

我有一个Kusto查询,例如:

(Events
| take 1)
| join kind=leftouter Sensor_Data on $left.start_timestmp == 
$right.timestmp,someotherfield

,它将永远不会返回。联接的右侧有数十亿个条目。

如果我这样做

Events
| take 1

并将结果立即用于Sensor_Data的where子句中。

MS支持团队解释说,此查询需要对Sensors_Data表进行全表扫描。查询优化器未考虑联接参数。

问题: Kusto Query Optimizer真的不能根据联接条件优化查询吗?对我来说,听起来有点像1999年,首先必须手动执行查询的左侧,然后也必须手动执行右侧?是否有一些提示,可以使它快速运行?

解决方法

考虑按如下方式重写查询(例如),看看是否可以帮助其更好地执行:

Command errored out with exit status 1: 'c:\program files\python38\python.exe' -u -c 'import sys,setuptools,tokenize; sys.argv[0] = '"'"'C:\\Users\\User\\AppData\\Local\\Temp\\pip-install-0dci9ehe\\numpy\\setup.py'"'"'; __file__='"'"'C:\\Users\\User\\AppData\\Local\\Temp\\pip-install-0dci9ehe\\numpy\\setup.py'"'"';f=getattr(tokenize,'"'"'open'"'"',open)(__file__);code=f.read().replace('"'"'\r\n'"'"','"'"'\n'"'"');f.close();exec(compile(code,__file__,'"'"'exec'"'"'))' install --record 'C:\Users\User\AppData\Local\Temp\pip-record-dlf9c_63\install-record.txt' --single-version-externally-managed --user --prefix= --compile --install-headers 'C:\Users\User\AppData\Roaming\Python\Python38\Include\numpy'

相关问答

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