Airbnb Airflow против Apache Nifi

Являются ли Airflow и Nifi одной и той же работой в рабочих процессах? Что такое pro/con для каждого? Мне нужно прочитать некоторые json файлы, добавить к ним дополнительные пользовательские метаданные и поместить их в очередь Kafka для обработки. Я смог сделать это в Нифи. Я все еще работаю над Airflow. Я пытаюсь выбрать лучший механизм рабочего процесса для моего проекта Спасибо!

Ответ 1

Большой обзор Airflow и Apache NiFi можно найти в этом посте Reddit: https://www.reddit.com/r/bigdata/comments/51mgk6/comparing_airbnb_airflow_and_apache_nifi/

В вашем конкретном случае использования файлов Json, их обогащения и маршрутизации в Kafka я считаю, что NiFi - подходящий инструмент для работы. Ниже приведены пара процессоров, которые вы могли бы использовать, а также документация для каждого из них:

GetFile: https://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi/nifi-standard-nar/1.9.2/org.apache.nifi.processors.standard.GetFile/index. HTML

JoltTransformJSON: https://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi/nifi-standard-nar/1.9.2/org.apache.nifi.processors.standard.JoltTransformJSON/index. HTML

PublishKafka (или PublishKafka_0_10 в зависимости от вашей версии): https://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi/nifi-kafka-0-9-nar/1.9.2/org. apache.nifi.processors.kafka.pubsub.PublishKafka/index.html