spark shell을 통해 테스트 코드 작성 중,
hive 테이블을 조회한 데이터프레임이 df.show()를 할 때마다 값이 바뀌는 현상이었습니다.
한 번 로드한 데이터를 메모리 상에 상주시키기 위해
df.cache()함수를 사용하였습니다.
예제코드:
from pyspark.sql import SparkSession
spark = SparkSession.builder\
.config("hive.exec.dynamic.partition.mode", "nonstrict")\
.config("partitionoverwritemode", "dynamic")\
.appName("test")\
.enableHiveSupport().getOrCreate()
df = spark.sql("select * from test.sample limit 10")
df.cache()
df.show()
반응형