2016-11-16 4 views
0

Если у нас есть файл 128 МБ с разделом HDFS 128 МБ, и мы выдаем sc.textFile (xxx, 4), что на самом деле происходит? Что же означает RDD в данном случае в терминах разделения? 4 обработки разделов по-прежнему или всего 1?SPARK RDD Partition на одном HDFS Split

ответ

1

При использовании такого кода:

JavaRDD<String> in = sc.textFile(xxx,4); 
in.persist(); 

Тогда ваш РДД имеет 4 разделов. Они должны иметь размер 32 МБ каждый. Затем вы можете сделать что-то любит это:

rdd.count() 

При запуске, то ваш код локально с местными [4], то счетчик будет выполняться с 4-процессов (задач) параллельно.

+0

ОК, но текст указывает, что по умолчанию он будет блокироваться HDFS, поэтому это неверно. С тобой все еще. Тогда, если не использовать локальные [4], что тогда? Все разделы будут находиться в памяти на том же узле, что и 4 части, или только 1 часть с указателями для начала, конца и т. Д.? MR кажется немного легче следовать. @Simon Schiff – thebluephantom

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