使用滑动时间窗口/垃圾箱 - kql查询在阈值范围之间的值是否值
我想在KQL中编写一个滑动窗口查询,该查询将在5分钟的时间窗口中检查汽车的速度是否始终在一定速度限制(例如B/W 100和150 km/h)之间。
以下是一个示例数据集:
时间戳 | 速度 | 温度 |
---|---|---|
2022-01-01 00:00:00.0000000 | 142.5 | 25.1 |
2022-01-01-01-01 00:01:00.0000000 | 147.4 | 25.5 |
20222-01-01-01-01-01-01-01-01 00:02 | :00.0000 000 158.2 25.2 258.2 258.2 258.2 258.2 258.2 | 258.2 258.4 |
20222-011 -01 00:03:00.0000000 | 134.8 | 25.6 |
2022-01-01 00:04:00.0000000 | 125.3 | 25.5 |
2022-01-01 00:05:00.0000000 | 118.4 | 25.4 |
2022-01-01 00:06:00.0000000 | 106.3 | 26.3 |
2022-01-01 00:07:00.0000000 | 119.6 | 26.5 |
2022-01-01 00:08:00.0000000 | 134.7 | 25.4 |
2022-01-01 00:09:00.0000000 | 153.2 | 26.6 |
2022-01-01 00:10:00.0000000 | 137.5 | 25.5 |
2022-01-01 00: 11:00.0000000 | 129.9 | 27.4 |
2022-01-01 00:12:00.0000000 | 118.1 | 26.3 |
2022-01-01 00:13:00.0000000 | 105.4 | 25.7 |
2022-01-01 00:14:00.0000000 | 101.7 | 24.4 |
2022-01-01 00:15: 00.0000000 | 100.8 | 25.6 |
2022-01-01 00:16:00.0000000 | 95.4 | 26.2 |
2022-01-01-01-01 00:17:00.0000000 105.00000 | 105.6 | 26.7 |
首先检查窗口是否在定义的范围为0-4mins,然后是1-4mins,,然后检查速度,,然后检查窗口然后,2-6分钟,然后3-7分钟,然后,4-8分钟等.....直到10-14分钟,然后是11-15分钟,然后是12-16分钟,然后13-17分钟。如果速度在100-150km/h的范围内连续,则查询将返回这些行作为输出。
我希望以下输出:
时间戳 | 速度 | 温度 |
---|---|---|
2022-01-01 00:03:00.0000000 | 134.8 | 25.6 |
2022-01-01-01 00:04:00.0000000 | 125.3 | 25.5 |
2022-01-01-01-01-01-01-01 00:05:05:00.00000 | 118.4 | 25.4 25.4 |
25.4 2022222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222太体2121- 01 00:06:00.0000000 | 106.3 | 26.3 |
2022-01-01 00:07:00.0000000 | 119.6 | 26.5 |
2022-01-01 00:08:00.0000000 | 134.7 | 25.4 |
2022-01-01 00:10:00.0000000 | 137.5 | 25.5 |
2022-01-01 00 :11:00.0000000 | 129.9 | 27.4 |
2022-01-01 00:12:00.0000000 | 118.1 | 26.3 |
2022-01-01-01 00:13:00.0000000 | 105.4 | 25.4 25.7 |
2022-01-01-01-01-01-01-01-14:14:00.00.00.00000 | 101.00000 101.724.4 | 24.4 |
2022222-01-15 :00.0000000 | 100.8 | 25.6 |
在输出数据集中,从0-2分钟开始的时间戳被过滤掉,因为当我们从0-4分钟检查时,有一个值(158.2km/h)以外(100-150 kmm/h)。同样,我们在检查1-5分钟以及从2-6分钟检查时发现此值。
从3-7分钟开始,所有速度值都在范围内持续5分钟。从4-8分钟开始,这就是为什么要保持这些行的原因。
最后,我只想在所有5分钟的时间窗口中绘制速度始终在范围内的所有时间窗口。绘图零件很明确,因此我只需要过滤行的帮助即可。
提前致谢!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是一个解决方案,没有任何数据的假设。
其他信息具有时间戳的粒度,可以帮助简化它。
bin
,它是地板的代名词,但我们对天花板没有等效。Fiddle
Here is a solution without any assumptions on your data.
Additional information, such has the granularity of the timestamps, could help to simplify it.
bin
which is a synonym to floor, but we don't have an equivalent for ceiling.Fiddle