У меня есть входной файл размером 260 ГБ, и мой объем памяти искрового кластера составляет 140 ГБ, при запуске задания на искривление избыточные данные 120 сохраняются на диск по умолчанию, или я должен использовать некоторые уровни хранения для его указания.
Я не пробовал никаких решений для решения этой проблемы.
def main(args: Array[String]){
val conf:SparkConf = new SparkConf().setAppName("optimize_1").setMaster("local")
val sc:SparkContext = new SparkContext(conf)
val myRDD = sc.parallelize( List(("1", "abc", "Request"), ("1", "cba", "Response"), ("2", "def", "Request"), ("2", "fed", "Response"), ("3", "ghi", "Request"), ("3", "ihg", "Response")) )
val myRDD_1 = sc.parallelize( List(("1", "abc"), ("1", "cba"), ("2", "def"), ("2", "fed"), ("3", "ghi"), ("3", "ihg")) )
myRDD_1.map(x=>x).groupBy(_._1).take(10).foreach(println)
myRDD_1.groupByKey().foreach(println) }
Ниже приведен ожидаемый и рабочий вывод для небольших данных:
(2,CompactBuffer(def, fed))
(3,CompactBuffer(ghi, ihg))
(1,CompactBuffer(abc, cba))
Но при его применениив больших масштабах я получаю следующую ошибку:
"Dspark.ui.port = 0 '-Dspark.yarn.app.container.log.dir = / hadoop / yarn / log / application_1555417914353_0069/ container_e05_1555417914353_0069_02_000009 -XX: OnOutOfMemoryError = 'kill% p' org.apache.spark.executor.CoarseGrainedExecutorBackend - искра -driver-url: // CoarseGrainedScheduler - IDOSP0-DOS080 - DOSSP330 - DOSSP3SD330 - DOSSP3 - DOSSP3 - DOC330 - DOSSP3-app-id application_1555417914353_0069 - файл пути к классу пользователя: $ PWD / app .jar 1> / hadoop / yarn / log / application_1555417914353_0069 / container_e05_1555417914353_0069_02_000009 / stdout 2> / hadoop / yarn / log / application_1555417914353_0069 / container_e05_1555417914353_0069_02_000009 / stderr ""
ОШИБКА YarnClusterScheduler: потерянный исполнитель 17 на DOSSPOCVM2: DOSSPOCVM200: нетронут: DOSSPOC2M2: 55_00_002: не указан_0_02_502_3_50_00_02_002: не указан_0_02: 55_00_002: не найденСтатус выхода: -100.Диагностика: контейнер освобожден на потерянном узле
Пожалуйста, предложите способ решения этой проблемы