Внутреннее соединение в spark Java

#java #apache-spark

#java #apache-spark

Вопрос:

Я пытаюсь объединить два файла по 10 ГБ каждый и использовать внутреннее соединение. В моем кластере есть 3 рабочих узла.

Вот моя конфигурация

 Driver Memory: 5G
Executor Memory: 15 G
Cores/Executor: 1
spark.cores.max: 9
  

Оба файла объединяются на основе столбца ID. В каждом файле 10 миллионов записей.

Это занимает бесконечное время.

Может кто-нибудь, пожалуйста, предложить?

Ответ №1:

Вы можете попробовать следующие варианты:

  1. Перераспределение данных

  2. Исправлена проблема с искаженными данными, если она существует

  3. установить spark.sql.shuffle.partitions (в противном случае по умолчанию будет создано 200 разделов)

  4. Обновите конфигурацию Spark (учитывая, что один узел имеет 15 ГБ оперативной памяти) и 9 ядер

 Driver Memory: 2G
Executor Memory: 7G
cores: 4