Мне нужно обработать несколько файлов, разбросанных по различным каталогам. Я хотел бы загрузить все это в один RDD, а затем выполнить карту/уменьшить на нем. Я вижу, что SparkContext способен загружать несколько файлов из одного каталога с помощью подстановочных знаков. Я не уверен, как загружать файлы из нескольких папок.
Следующий фрагмент кода завершается с ошибкой:
for fileEntry in files:
fileName = basePath + "/" + fileEntry
lines = sc.textFile(fileName)
if retval == None:
retval = lines
else:
retval = sc.union(retval, lines)
Это не работает в третьем цикле со следующим сообщением об ошибке:
retval = sc.union(retval, lines)
TypeError: union() takes exactly 2 arguments (3 given)
Что причудливо, я предоставляю только 2 аргумента. Любые указатели оценили.