Как подключить Машинное обучение Azure и Spark Streaming или Apache Storm

Есть ли возможность получить поток из Spark Streaming или Apache Storm в Машинное обучение Azure? В опции reader есть вход для чтения данных из базы данных Hive hive

но как получить поток данных в реальном времени из Spark или Storm, например обнаружение мошенничества в реальном времени


person ssuperczynski    schedule 16.11.2015    source источник


Ответы (2)


Для обнаружения мошенничества в реальном времени вы обычно создаете модель в Azure ML, затем публикуете эту модель в oWeb-сервисе, а затем в своей системе Spark или Storm вы вызываете эту веб-службу последовательно (например, как платеж произошел на коммерческих сайтах). , то вы немедленно получите ответ о фактических параметрах, которые вы отправили при вызове веб-службы.

person Moncef Maloum    schedule 25.11.2015

Я понимаю желание сделать это с помощью Open Source Storm или Spark.

Но я также хотел бы предложить решение на 100% Azure, потому что лично я нашел его отличным способом быстро делать многие «простые» вещи с потоковыми данными.

Во-первых, у нас есть служебные шины, которые могут содержать концентраторы событий. Концентратор событий - это хорошо управляемая очередь, из которой можно передавать события данных в облако. В очереди есть функция паузы и перемотки, поэтому, если вам нужно изменить своего потребителя, вы можете быть уверены, что не потеряете данные. Вы также можете установить память для очереди до 7 дней (это стоит немного дороже, чем, скажем, хранение данных только в течение 24 часов).

Когда данные находятся в концентраторе событий, можно использовать Azure Stream Analytics вместо Storm или Spark для извлечения данных из очереди. Stream Analytics использует SQL для запроса очереди. К одному прикрепляются источники входных и выходных данных. Входными данными могут быть концентраторы событий, большие двоичные объекты или даже наборы справочных данных. Выходные данные могут включать другой концентратор событий, лазерный BLOB-объект, лазерную таблицу, базы данных SQL или даже визуализацию в реальном времени в PowerBI. Stream Analytics имеет единицу масштабирования, называемую «Streaming Units», где каждая единица равна 1 МБ / с пропускной способности для обработки. Вы платите только за обрабатываемые данные, поэтому, если поток идет нормально, вы не платите, в отличие от использования Storm или Spark в облаке. Stream Analytics может даже обрабатывать сообщения совершенно разных форматов, хотя я бы рекомендовал иметь хотя бы одно поле с идентификатором для вашего типа сообщения. Основные запросы Stream Analytics, которые хранят ваши потоковые данные в больших двоичных объектах, могут выглядеть следующим образом

Select * from EventHub into Blob

В Stream Analytics можно обернуть веб-службу машинного обучения Azure как функцию. Это позволяет вызывать AML и оценивать потоковые данные в режиме реального времени. Stream Analytics может интеллектуально создавать микропакеты вызовов AML, что означает, что он может оценивать до 200 решений за один вызов AML. Просто убедитесь, что вы масштабировали веб-службу AML, чтобы не отставать от потока.

Я надеюсь, что это будет правильным ответом на поставленный вопрос, но, раскрывая информацию, я работаю на Microsoft над этими продуктами, но надеюсь сделать это более информативным, чем коммерческое предложение.

person Dan Ciborowski - MSFT    schedule 24.02.2016