Ответ 1
- Apache Apex - движок для обработки потоковых данных. Некоторые другие, которые пытаются достичь того же, - это шторм Apache, а также Apache. Различительный фактор для Apache Apex: он оснащен встроенной поддержкой отказоустойчивости, масштабируемости и фокусировки на работоспособности, которые являются ключевыми факторами в производственных прецедентах.
Сравнение с Spark: Apache Spark на самом деле является пакетной обработкой. Если вы считаете, что Spark streaming (в котором используется искра внизу), то это микро-пакетная обработка. Напротив, Apache Apache - это настоящая обработка потока. В некотором смысле, входящая запись НЕ должна ждать следующей записи для обработки. Запись обрабатывается и отправляется на следующий уровень обработки, как только она поступит.
-
В настоящее время ведется работа над добавлением поддержки интеграции Apache Apex с библиотеками машинного обучения, такими как Apache Samoa, H2O См. https://issues.apache.org/jira/browse/SAMOA-49
-
В настоящее время он поддерживает Java, Scala.
https://www.datatorrent.com/blog/blog-writing-apache-apex-application-in-scala/ Для Python вы можете попробовать его с помощью Jython. Но я сам не пробовал. Так что, не очень уверен в этом. -
Интеграция с Spark не может быть хорошей идеей, учитывая, что это два разных процессора обработки. Но интеграция apache apex с библиотеками машинного обучения идет полным ходом.
Если у вас есть другие вопросы, запросы на функции вы можете разместить в списке рассылки для пользователей apache apex: https://mail-archives.apache.org/mod_mbox/incubator-apex-users/ p >