DataPipeline/Spark
Pyspark Session
wave35
2023. 7. 14. 17:52
[ SparkSession ]
Spark를 사용하기 위해선 entry point를 제공하는 Spark 객체를 사용해야 한다.
보통 SparkContext와 SparkSession은 사용하는데,
SparkSession은 Spark 2.0 버전에서 나왔고 spark RDD, DataFrame, DataSet, spark sql 사용이 가능하다.
spark-shell에서 자동적으로 SparkSession 객체가 생성되며 spark 변수로 사용할 수 있다.
또한 기존 SparkContext에서 다른 종류의 contexts인 SQLContext, HiveContext와
함께 사용하기도 하였는데, SparkSession은 이를 대체하여 범용성을 가진다.
아래 예시를 보자
- SparkContext
from pyspark import SparkContext
from pyspark.sql import SQLContext
from pyspark.sql import HiveContext
sc = SparkContext()
sql_context = SQLContext(sc)
hive_context = HiveContext(sc)
- SparkSession
import pyspark
from pyspark.sql import SparkSession
spark = SparkSession.builder \
.enableHiveSupport() \
.getOrCreate()