Увеличивают ли разделы производительность при использовании только одного компьютера / узла?

#scala #performance #apache-spark

#scala #Производительность #apache-spark

Вопрос:

Я знаю, что разделы повысят производительность, выполняя параллельные задачи на разных узлах кластера. Но помогут ли разделы повысить производительность, когда я использую только один компьютер? Я использую Spark и Scala.

Ответ №1:

Да, это увеличит производительность.

Убедитесь, что ваш процессор имеет более одного ядра.

при создании локальной sparksession убедитесь, что используется несколько ядер :

  • local для локального запуска с одним потоком или local[N] для локального запуска с N потоками я предлагаю вам использовать local[*]

и убедитесь, что ваш RDD / Dataset имеет несколько разделов, хорошее количество разделов в 2-4 раза превышает количество ядер.

Ответ №2:

Apache Spark scacles также работает по вертикали (CPU, Ram, …) и по горизонтали (узлы). Я предполагаю, что ваш компьютер / узел имеет процессор с более чем одним ядром. Затем разделы обрабатываются параллельно.