参考数据加入流分析输入不提供输出

Reference data join on stream analytics input not giving output

我正在尝试使用来自事件中心的参考数据和输入流在 Azure 流分析作业中设置规则。

这是我在 BLOB 存储中的参考数据 JSON 数据包:

{
    "ruleId": 1234, 
    "Tag" : "TAG1", 
    "metricName": "velocity", 
    "alertName": "velocity over 500",
    "operator" : "AVGGREATEROREQUAL",
    "value": 500
}

这里是流分析作业中的转换查询:

WITH
transformedInput AS
(
    SELECT
        metric = GetArrayElement(DeviceInputStream.data,0),
        masterTag = rules.Tag, 
        ruleId = rules.ruleId, 
        alertName = rules.alertName,
        ruleOperator = rules.operator, 
        ruleValue = rules.value
    FROM 
        DeviceInputStream
        timestamp by EventProcessedUtcTime
    JOIN 
        rules
        ON DeviceInputStream.masterTag = rules.Tag
)
--rule output--
SELECT
    System.Timestamp as time,
    transformedInput.Tag as Tag,
    transformedInput.ruleId as ruleId,
    transformedInput.alertName as alert,
    AVG(metric.velocity) as avg
    INTO
    alertruleblob
FROM
    transformedInput
GROUP BY
    transformedInput.masterTag,
    transformedInput.ruleId,
    transformedInput.alertName,
    ruleOperator, 
    ruleValue, 
    TumblingWindow(second, 6)
HAVING
    ruleOperator = 'AVGGREATEROREQUAL' AND avg(metric.velocity) >= ruleValue

这没有产生任何结果。但是,当我使用样本输入和参考数据进行测试时,我得到了预期的结果。但这似乎不适用于流数据。我的用例是,如果平均速度在 6 秒内大于 500 window,则将结果存储在另一个 blob 存储中。 velocity 的值已经超过 500 一段时间了,但我没有得到任何结果。

我做错了什么?

这一直有效。我只需要在流分析的参考输入路径中指定参考 blob 的输入路径,包括文件名。我基本上只引用了没有实际文件的 blob 容器。所以当我将路径模式更改为 "filename.json" 时,我得到了结果。这是一个愚蠢的错误。