В чем разница между Apache Spark и Apache Apex?

Apache Apex - это платформа унифицированного управления потоками и пакетной обработкой корпоративного класса с открытым исходным кодом. Используется в платформе GE Predix для IOT. Каковы основные различия между этими двумя платформами?

Вопросы

  1. С точки зрения науки о данных, чем она отличается от Spark?
  2. Предоставляет ли Apache Apex такую ​​функциональность, как Spark MLlib? Если нам нужно построить масштабируемые модели ML на Apache Apex, как это сделать и какой язык использовать?
  3. Придется ли ученым, изучающим данные, изучать Java для построения масштабируемых моделей ML? Есть ли у него Python API, как pyspark?
  4. Можно ли интегрировать Apache Apex со Spark и можно ли использовать Spark MLlib поверх Apex для построения моделей ML?

1 ответ

  1. Apache Apex - движок для обработки потоковых данных. Некоторые другие, которые пытаются достичь того же, - Apache Storm, Apache Flink. Отличительным фактором для Apache Apex является: он поставляется со встроенной поддержкой отказоустойчивости, масштабируемости и акцентом на работоспособность, которые являются ключевыми соображениями в производственных сценариях использования.

Сравнивая его со Spark: Apache Spark фактически является пакетной обработкой. Если вы рассматриваете потоковую передачу Spark (в которой используется искра), то это микропакетная обработка. Apache apex, напротив, является настоящей потоковой обработкой. В некотором смысле входящая запись НЕ ДОЛЖНА ждать обработки следующей записи. Запись обрабатывается и отправляется на следующий уровень обработки, как только она поступает.

  1. В настоящее время ведутся работы по добавлению поддержки интеграции Apache Apex с библиотеками машинного обучения, такими как Apache Samoa, H2O. См. https://issues.apache.org/jira/browse/SAMOA-49

  2. В настоящее время он поддерживает Java, Scala.
    https://www.datatorrent.com/blog/blog-writing-apache-apex-application-in-scala/ Для Python вы можете попробовать его с помощью Jython. Но я сам не пробовал. Так что, не очень уверен в этом.

  3. Интеграция со Spark может быть не очень хорошей идеей, учитывая, что это два разных процессора. Но интеграция Apache apex с библиотеками машинного обучения находится в стадии разработки.

Если у вас есть какие-либо вопросы, просьбы о функциях, вы можете опубликовать их в списке рассылки для пользователей Apache APEX: https://mail-archives.apache.org/mod_mbox/incubator-apex-users/

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