Проблема Stream Analytics в полях обновления - PullRequest
1 голос
/ 24 октября 2019

У меня проблема с обновлением поля в запросе потоковой аналитики. Запрос выглядит следующим образом:

SELECT * INTO CosmosDBTelemetry FROM IOTHub WHERE type like 't%' or type is null
SELECT * INTO CosmosDBEvents FROM IOTHub WHERE type = 'event'

В CosmosDBTelemetry я должен изменить значение deviceId на значение другого поля.

Другими словами, я хочу создать новый элемент с паройполей в том, что я получаю при вводе.

Может кто-нибудь мне помочь?

Заранее спасибо.

Симона

1 Ответ

0 голосов
/ 25 октября 2019

Во-первых, как упомянуто в комментарии @silent, интеграция Stream Analytics с БД Azure Cosmos позволяет вставлять или обновлять записи в вашем контейнере на основе указанного столбца идентификатора документа. Это также упоминается как Upsert. Более подробно, пожалуйста, обратитесь к этой ссылке .

enter image description here

Во-вторых, я боюсь, что нецелесообразно использовать ASA для реализациитвои нужды. ASA более склонен собирать данные из источника, чем очищать или изменять данные в месте назначения. Вы можете получить представление о Функция Azure Cosmos DB Trigger . Он может отслеживать базу данных космоса и изменять столбцы на основе другого значения, как только потоки данных попадают в базу данных.


Если ваш новый столбец статичен, вы можете использовать Ввод справочных данных вASA. См. Следующий сценарий:

Если ваши справочные данные не должны изменяться, тогда поддержка статических справочных данных включается путем указания статического пути во входной конфигурации. Azure Stream Analytics забирает большой двоичный объект с указанного пути. Токены замены {date} и {time} не требуются. Поскольку эталонные данные являются неизменными в Stream Analytics, не рекомендуется перезаписывать блок статических эталонных данных.

Это использование ввода эталонных данных: https://docs.microsoft.com/en-us/stream-analytics-query/reference-data-join-azure-stream-analytics?toc=https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fazure%2Fstream-analytics%2FTOC.json&bc=https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fazure%2Fbread%2Ftoc.json

...