2015-01-08 5 views
1

Я загрузке около 200k текстовых файлов в Спарк с помощью input = sc.wholeTextFiles(hdfs://path/*) я запустить println(input.count) Оказывается, что моя искра оболочка выводит тонны текста (которые путь каждого файла) и через некоторое время он просто висит, не возвращая моего результата.Spark: Молча выполнить sc.wholeTextFiles

Я считаю, что это может быть связано с количеством текста, выводимого wholeTextFiles. Вы знаете, как можно спокойно запускать эту команду? или есть лучшее обходное решение?

Спасибо!

ответ

1

Насколько велики ваши файлы? Из wholeTextFilesAPI:

Небольшие файлы являются предпочтительными, большие файлы также допустимы, но может причиной плохой производительности.

В conf/log4j.properties, вы можете подавить чрезмерную регистрацию, например:

# Set everything to be logged to the console 
log4j.rootCategory=ERROR, console 

Таким образом, вы получите обратно только res к РЕПЛ, так же, как в Scala (язык) repl.

Вот все остальные уровни ведения журнала, с которыми вы можете играть: log4j API.

+0

они обычно менее 1 МБ. Некоторые могут быть очень маленькими (несколько килобайт). Идея состоит в том, чтобы загрузить их все, а затем создать граф, используя graphx. Я не вижу другого способа сделать это, чем использовать wholeTextFiles. – Stephane

+0

. Вероятно, теперь лучше отредактировать свой вопрос, включив в него код и содержимое образца. Я предполагаю, что настройка ведения журнала не решила вашу проблему? –

+0

Я буду экспериментировать в понедельник и дам вам знать :) – Stephane

Смежные вопросы