Поля, на которые есть ссылка в запросе, не найдены во входных событиях Ожидаемые поля: TIME Найденные поля: MESSAGEID Задание аналитики Azure Stream

Я только что создал задание Azure Stream Analytics и настроил входы и выходы, и это задание Stream Analytics принимает концентратор IoT Azure в качестве входного, который получает данные из MXChip набора разработчика IoT Azure. Но я получаю сообщение об ошибке в деталях топологии задания ввода, как показано ниже.

[4:10:13 PM] Fields referenced in query not found in input events
Fields Expected: TIME
Fields found: MESSAGEID, HUMIDITY
Missing fields: TIME

Ниже мой запрос.

WITH BasicOutput AS 
(
SELECT    
    messageId,
    System.TIMESTAMP AS TIME,
    deviceId,
    temperature,
    humidity,
    pressure,
    pointInfo,
    IoTHub,
    EventEnqueuedUtcTime,
    EventProcessedUtcTime,
    PartitionId,    
    count(*) AS Count
FROM
    Input TIMESTAMP By TIME
    GROUP BY TUMBLINGWINDOW(minute, 2), 
    messageId, 
    deviceId,
    temperature,
    humidity,
    pressure,
    pointInfo,
    IoTHub,
    EventEnqueuedUtcTime,
    EventProcessedUtcTime,
    PartitionId
)

SELECT * INTO SQLServerOutput FROM BasicOutput
SELECT * INTO AzureFunctionOutput FROM BasicOutput

Вы когда-нибудь сталкивались с этой проблемой? Любая помощь очень ценится.

1 ответ

Решение

Я просто выполнил поиск в Google и нашел этот документ. Прочитав то же самое, я обновил свой запрос следующим образом.

WITH BasicOutput AS 
(
SELECT    
    messageId,
    deviceId,
    temperature,
    humidity,
    pressure,
    pointInfo,
    IoTHub,
    EventEnqueuedUtcTime,
    EventProcessedUtcTime,
    PartitionId,    
    COUNT(*) AS Count
FROM
    Input TIMESTAMP By EventEnqueuedUtcTime
    GROUP BY TUMBLINGWINDOW(second, 2), 
    messageId, 
    deviceId,
    temperature,
    humidity,
    pressure,
    pointInfo,
    IoTHub,
    EventEnqueuedUtcTime,
    EventProcessedUtcTime,
    PartitionId
)

SELECT * INTO SQLServerOutput FROM BasicOutput
SELECT * INTO AzureFunctionOutput FROM BasicOutput

Я удалил System.TIMESTAMP AS TIME, от моего выбора и добавить TIMESTAMP By EventEnqueuedUtcTime, Это начало работать после этого изменения.

Другие вопросы по тегам