Stream Analytics: обработка сжатых и несжатых данных в одном задании - PullRequest
0 голосов
/ 06 ноября 2019

Мы используем Stream Analytics для чтения IoT-сообщений из IoT Hub. Чтобы улучшить использование полосы пропускания, мы хотим отправить данные в сжатом формате. Я знаю, что потоковая аналитика поддерживает распаковку входных потоков в формате gzip и deflate, что задокументировано здесь .

Однако в период миграции у нас могут быть устройства, отправляющие сжатые и несжатые данные вIoT Hub и нам приходится иметь дело с обоими форматами / версиями клиента.

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

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

Есть ли более простой способ выполнить этот сценарий миграции?

1 Ответ

1 голос
/ 06 ноября 2019

Вам может не потребоваться два задания ASA, но, возможно, вы можете направить сообщения в концентратор событий, если добавите свойство метаданных и просто добавите другой вход (этот концентратор событий) в существующее задание ASA. Для этого конкретного ввода в качестве Типа сжатия событий вы, например, будете использовать GZip, а для IoT Hub потенциально будет «Нет».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...