我有一个带有两个查询的 TICK 脚本(如下所示),它们都groupBy
在同一个标签上执行。然后,该脚本连接该标记上的两个查询,并使用fill
of指定一个完全外连接'null'
。然而,Kapacitor 似乎将其视为内部连接,如统计数据所示(也在下方)。查询分别发出 33 和 32 个点,连接发出 32 个点。完全外连接不应该发出至少与点数较多的查询(33)一样多的点吗?当我|log()
查询时,我能够识别连接删除的记录——它是由一个查询发出的,而不是另一个。
有关如何进一步解决此问题的任何建议?
勾选脚本:
var raw_event = batch
|query('''select rsum from jsx.autogen.raw_event''')
.period(1m)
.every(1m)
.offset(1h)
.align()
.groupBy('location')
var event_latency = batch
|query('''select rsum from jsx.autogen.event_latency''')
.period(1m)
.every(1m)
.offset(1h)
.align()
.groupBy('location', 'glocation')
raw_event
|join(event_latency)
.fill('null')
.as('raw_event','event_latency')
.on('location')
.streamName('join_stream')
|log()
统计:
"node-stats": {
"batch0": {
"avg_exec_time_ns": 0,
"collected": 65,
"emitted": 0
},
"join4": {
"avg_exec_time_ns": 11523,
"collected": 65,
"emitted": 32
},
"log5": {
"avg_exec_time_ns": 0,
"collected": 32,
"emitted": 0
},
"query1": {
"avg_exec_time_ns": 0,
"batches_queried": 33,
"collected": 33,
"emitted": 33,
"points_queried": 33,
"query_errors": 0
},
"query2": {
"avg_exec_time_ns": 0,
"batches_queried": 32,
"collected": 32,
"emitted": 32,
"points_queried": 32,
"query_errors": 0
}