우노
[Spark] spark.driver.maxResultSize 오류 본문
오류
org.apache.spark.SparkException: Job aborted due to stage failure: Total size of serialized
results of XXXX tasks (X.0 GB) is bigger than spark.driver.maxResultSize (X.0 GB)
원인
- RDD로 분산 돼 있던 데이터를 collect() 등을 사용해 driver로 합치면서 driver 메모리 최대크기(driver.maxResultSize)를 초과했기 때문에 발생한다.
- driver.maxResultSize의 기본값은 1G(1024MB)이다.
- 자세한 내용은 응용 프로그램 속성 을 참조
해결 방법
resource 설정을 통해 driver의 최대 메모리 크기를 늘린다.
SparkConf 등록을 통해 해결한다면
conf.set("spark.driver.maxResultSize", "<X>g")
spark-defaults.conf 파일을 통해 해결한다면
spark.driver.maxResultSize <X>g
spark-shell, spark-submit 명령행 매개변수를 통해 해결한다면
--conf spark.driver.maxResultSize=<X>g
예외 메시지에 보고된 값 보다 높게
<X>g
값을 설정한다.- 높은 한도를 설정 하는 경우 드라이버에서 메모리 부족 오류가 발생할 수 있다.
- 메모리 부족 오류를 방지 하려면 적절 한 제한을 설정 해야한다.
'Data > Spark' 카테고리의 다른 글
[Spark] Shuffle 이란? (2) | 2020.07.12 |
---|---|
[Spark] SparkConf, spark-shell, spark-submit, spark-defaults.conf 적용 예 (0) | 2020.07.10 |
[Spark] Local file에 write하기 (0) | 2020.07.09 |
[Spark] Spark의 Vector, Local Matrix 연산 (0) | 2020.07.09 |
[Spark] Breeze의 Vector, Matrix 연산 (0) | 2020.07.09 |
Comments