PySpark를 사용하여 특정 설정으로 Spark 세션을 초기화

2024. 8. 10. 16:19DATA/Spark

반응형

 


# Create a SparkSession
spark = SparkSession.builder \
    .appName("WordCount with YARN") \
    .master("local") \
    .config("spark.submit.deployMode", "client") \
    .config("spark.yarn.stagingDir", "hdfs:///user/staging") \
    .getOrCreate()

# Now you can use `spark` to interact with Spark

 



1. SparkSession.builder:
   - SparkSession을 생성하기 위한 진입점이다. SparkSession은 DataFrame API, SQL 및 기타 Spark 구성 요소와 상호작용할 수 있는 통합 인터페이스를 제공한다.

2. .appName("WordCount with YARN"):
   - Spark 애플리케이션의 이름을 설정한다. 여기서는 "WordCount with YARN"으로 설정되어 있으며, Spark 웹 UI와 로그에서 애플리케이션을 식별하는 데 도움을 준다.

3. .master("local"):
   - 클러스터 관리자의 마스터 URL을 지정한다. "local"은 애플리케이션이 단일 스레드를 사용하는 로컬 머신에서 실행됨을 의미한다. 주로 테스트나 개발 목적으로 사용된다. 실제 클러스터에서 실행하려면 클러스터의 마스터 URL을 여기서 지정해야 한다(예: yarn은 YARN 클러스터를 의미하며, spark://master:7077은 독립형 클러스터를 의미한다).

4. .config("spark.yarn.stagingDir", "hdfs:///user/zoca01/staging"):
   - 특정 Spark 구성 속성을 설정한다. 여기서는 "spark.yarn.stagingDir"이 "hdfs:///user/zoca01/staging"으로 설정되어 있다. 이는 Spark가 YARN 클러스터에서 실행될 때, 작업의 중간 결과를 저장할 HDFS의 디렉토리를 지정하는 데 사용된다.

5. .getOrCreate():
   - 설정한 옵션으로 SparkSession을 생성한다. 이미 존재하는 SparkSession이 있다면 이를 반환하고, 없다면 새로 생성한다.

 
반응형