'데이터 엔지니어'로 성장하기

정리하는 걸 좋아하고, 남이 읽으면 더 좋아함

Data/Spark

Spark) createOrReplaceTempView

MightyTedKim 2023. 3. 27. 09:35
728x90
반응형

빅지기 책 233쪽에 보면

`SparkSql을 사용하면, 데이터프레임을 SQL로 집계할 수 있다.`

라고 말하며 createOrReplaceTempView를 이야기해준다.

 

항상 df으로 작업하던 나에게 꿀같은 소식.

난 SQL이 더 편한다.

<코드>
 df.createOrReplaceTempView('test')
 spark.sql("select * from test").show(3)
 

<결과>

+-------+---------+
|   col1|     col2|
+-------+---------+
|      a|        1|
|      b|        2|
|      c|        3|
+-------+---------+
only showing top 3 rows하지 않는 한, 쿼리를 실행할 때마다 항상 최신의 데이터가 들ㅇ쳐진다.

 

spark thrift server에서 thrift가 이기종 DB를 호환가능하게 만들어주는데

이것도 비슷한가 궁금했다.

그러던 중 좋은 블로그를 찾았는데, 일반 df와 spark sql을 비교해준다.

근본적으로는 같고, view를 생성하는 점만 같다고 한다.

tempView 역시 variable과 마찬가지로 session이 종료되면 drop된다.

 

하지만 sessions을 넘나드는 view도 있을까?

결론은 못찾음, 하지만 비슷한건 찾음

session내 공유 createOrReplaceGlobalTempView

application 내 공유 createOrReplaceTempView

 

https://spark.apache.org/docs/3.1.2/api/python/reference/api/pyspark.sql.DataFrame.createOrReplaceGlobalTempView.html

\https://spark.apache.org/docs/3.1.3/api/python/reference/api/pyspark.sql.DataFrame.createOrReplaceTempView.html

 

 

 

 

https://jhleeeme.github.io/spark-temp-view/

https://spark.apache.org/docs/3.1.3/api/python/reference/api/pyspark.sql.DataFrame.createOrReplaceTempView.html

728x90
반응형