Ошибка потоковой передачи MapReduce Python Данные CSV - PullRequest
0 голосов
/ 03 августа 2020

Мне трудно определить причину ошибки streaming error при запуске функции MapReduce с использованием python.

Обычный код python возвращает правильный результат: средняя зарплата составляет $ 6462.

Правильный вывод также производится с использованием одного редуктора.

Используя 3 редуктора, функция MapReduce запускается, выдает ошибку, выдает результат (который правильный - как указано выше) .

Я просто ищу решение "Job Not Successful! Streaming Job Failed!" error, которое возникает при запуске функции.

mapper.py

#!/usr/bin/python 
import sys
for line in sys.stdin:
   fields = line.strip().split(',')
   print('salary', '\t', fields[-1])

reducer.py

#!/usr/bin/python 
import sys
data = []
for line in sys.stdin:
   index, value = line.split('\t')
   data.append(int(value))
   average_salary = sum(data)/len(data)
   rounded = round(average_salary)
print("The average salary is $"+str(rounded)+".")

Любая помощь приветствуется

...