У меня есть большой CSV-файл в моей HDFS.Я читаю из HDFS и импортирую в pandas (в моем ноутбуке jupyter) для дальнейшей обработки, используя следующий код:
spark_session = SparkSession.builder\
.master(master)\
.appName(app_name)\
.getOrCreate()
sdf = spark_session.read.csv(file_name, sep='\t', header=True, schema=df_schema)
pdf = sdf.toPandas() # Throwing exception
Это исключение ниже:
Py4JJavaError: An error occurred while calling o46.collectToPython.
: java.lang.OutOfMemoryError: Java heap space
at org.apache.spark.sql.execution.SparkPlan$$anon$1.next(SparkPlan.scala:261)
at org.apache.spark.sql.execution.SparkPlan$$anon$1.next(SparkPlan.scala:257)
at scala.collection.Iterator$class.foreach(Iterator.scala:893)
...
У меня естьmy spark.driver.memory и spark.executor.memory на 24g и spark.storage.memoryFraction на 0,2
Исключение из-за нехватки памяти из-за недостатка памяти в спарк-кластере или в моей локальной системе ниже?
Мой коллега может выполнить вышеуказанный код в своей 12-граммовой системе, в то время как я получаю исключение с моей 24-граммовой оперативной памятью.Не могли бы вы помочь мне решить эту ошибку?