728x90
spark shell에서는 pyspark 코드가 실행되는데 .py 파일로 만든 후 spark-submit으로 실행하면 오류가 발생하는 경우가 있습니다.
제 경우에는 원인이 한글로 된 주석이 있어서였습니다.
해결 방법은 두 가지가 있습니다.
1. 한글로된 주석을 제거하기
2. py 파일을 utf8로 변경하는 방법
당연히 2번 방법을 원할 것입니다.
해결 방법은 아래와 같이 두 가지 중 하나를 선택하면 됩니다.
첫 번째, spark-submit을 실행하기 전 아래와 같이 pythonioencoding을 utf8로 변경합니다.
export PYTHONIOENCODING=utf8
두 번째, 파이썬 파일애서 아래 코드르 추가합니다.
import sys
sys.stdout = open(sys.stdout.fileno(), mode='w', encoding='utf8', buffering=1)
제가 문제를 해결할 때 사용한 방법은 첫 번째 방법입니다.
도움이 되시길 바랍니다.
참고
728x90
'빅데이터(BigData) > Spark' 카테고리의 다른 글
spark에서 master node로 데이터를 모으기 위해서 collect를 사용하는 방법 (0) | 2020.10.19 |
---|---|
dataframe의 partition 수 확인하기 (0) | 2020.10.16 |
dataframe(데이터프레임)으로 hive table(테이블) 생성하거나 데이터를 입력하기 (0) | 2020.10.02 |
java.time.format.DateTimeParseException: Text '2020-09-16 16:24:08.0' could not be parsed, unparsed text found at index 19 와 같은 에러가 발생하는 경우에 조치 방법 (0) | 2020.09.18 |
Spark에서 Dataframe을 이용하여 Hive 테이블 생성하기 (0) | 2020.01.03 |