#apache-spark #pyspark #rabbitmq #spark-streaming
#apache-spark #pyspark #rabbitmq #spark-streaming
Вопрос:
Я немного прочитал о потоковой передаче spark, и я хотел бы знать, возможно ли передавать данные из пользовательского источника с помощью rabbitmq в качестве брокера и передавать эти данные через поток spark, где алгоритмы машинного обучения и обработки графиков Spark будут выполняться на них и отправлять их в другие файловые системы / базы данных / информационные панели или приемники клиентов.
P.S Я пишу на python, у меня нет никакого опыта использования spark, и могу ли я назвать то, чего я пытаюсь достичь, микросервисом?
Спасибо.
Ответ №1:
Я считаю, что spark Structured streaming более подходит и прост в реализации, чем spark-streaming. Структурированная потоковая передача Spark соответствует приведенной ниже концепции
Источник (чтение из RabbitMQ) — Преобразование (применение алгоритма ML) — Приемник (запись в базу данных)
Вы можете сослаться на этот проект github для примера структурированной потоковой передачи Spark.
Я не думаю, что есть встроенный spark connector, который может использовать RabbitMQ. Я знаю, что есть один для Kafka, но вы можете написать свой собственный пользовательский исходный код и приемник (написать это без каких-либо знаний spark может быть сложно).
Вы можете запустить это как spark-job, и вам нужно создать слой службы оболочки, который запускает это как spark job (spark job launcher) или использовать spark rest api
https://spark.apache.org/docs/latest/structured-streaming-programming-guide.html
Комментарии:
1. Я планирую изучить spark. Я хотел знать, возможно ли создать что-то подобное с помощью spark и процесса его создания
2. ага!! вы могли бы сделать это в spark.