728x90
df라는 데이터프레임이 있을 경우 아래와 같이 실행하면 tb_df라는 테이블이 생성된다.
df.write.saveAsTable("tb_df")
df.write.saveAsTable("tb_df")
만약에 기존에 동일한 이름의 테이블이 있다면 아래와 같은 에러가 발생할 것이다.
Table `tb_df` already exists.
이런 에러가 발생한다면 두 가지방법으로 해결할 수 있다.
첫 번째 방법은 spark.sql을 이용하여 테이블이 있는 경우 삭제하는 것이다.
spark.sql("DROP TABLE IF EXISTS tb_df")
두 번째 방법은 데이터프레임으로 테이블을 만들 때 기존에 테이블이 있다면 overwrite하는 방법이다
df.write.mode(SaveMode.Overwrite).saveAsTable("tb_df")
#또는
df.write.mode("overwrite").saveAsTable("tb_df")
참고
728x90