Каковы преимущества увеличения размера раздела и уменьшения количества разделов в spark?

У меня есть 1 мастер и 3 слейва (по 4 ядра)

По умолчанию минимальный размер раздела в моем искровом кластере составляет 32 МБ, а размер файла — 41 ГБ. Поэтому я пытаюсь уменьшить количество разделов, изменив минимальный размер на 64 МБ.

sc.hadoopConfiguration.setLong("mapreduce.input.fileinputformat.split.minsize", 64*1024*1024)
val data =sc.textFile("/home/ubuntu/BigDataSamples/Posts.xml",800) 
data.partitions.size = 657

Итак, каковы преимущества увеличения размера раздела и уменьшения количества разделов. Потому что, когда мои разделы составляют около 1314, это заняло около 2-3 минут, и даже после уменьшения количества разделов это все еще занимает столько же времени.


person Pavan Kumar Aryasomayajulu    schedule 13.04.2016    source источник


Ответы (1)


Чем больше разделов, тем больше накладных расходов, но в некоторой степени это повышает производительность, поскольку вы можете запускать их все параллельно.

Таким образом, с одной стороны, имеет смысл оставить количество разделов равным количеству ядер. С другой стороны, может случиться так, что определенный размер раздела приведет к определенному количеству мусора в JVM, что может превысить лимит. В этом случае вы хотели бы увеличить количество разделов, чтобы уменьшить объем памяти каждого из них.

Это также может зависеть от рабочего процесса. Рассмотрим groupByKey против reduceByKey. В последнем случае вы можете много вычислить локально и немного отправить на удаленный узел. Перетасовки записываются на диск перед отправкой на удаленный компьютер, поэтому наличие большего количества разделов может снизить производительность.

Верно также и то, что с каждым разделом связаны некоторые накладные расходы.

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

Что-то вроде этого.

person evgenii    schedule 15.04.2016