Разделение Apache Spark - PullRequest
       5

Разделение Apache Spark

0 голосов
/ 25 января 2019

У меня есть вопрос:

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

Ответы [ 2 ]

0 голосов
/ 25 января 2019

Как только данные разделены, Spark поддерживает разделы для дальнейшей обработки, включая преобразование / действия, если вы не восстановите или не объедините их.

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

0 голосов
/ 25 января 2019

Действия в Spark возвращают

  • Ничего (None в PySpark, void в Java, Unit в Scala) для действий, используемых исключительно для побочных эффектов, таких как foreach.

  • Локальный, нераспределенный объект для других действий.

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

Поэтому разделение здесь не имеет смысла.

Результаты не являются распределенными структурами данных Spark, поэтомуразбиение не применяется, источники не изменяются (и в любом случае являются описаниями, а не контейнерами).

...