Data Engineering/Spark

[Spark] 스파크 Window 로컬 환경 설치하기

PTJ 2025. 5. 26. 10:41

1. Spark 설치 전 참고사항

Spark학습을 목적으로 한다면 로컬환경으로 구성하는 것이 좋습니다. 이유는 다음과 같습니다.

  1. 로컬 설치 이유
    • 비용 없음: 로컬 머신만 있으면 별도의 클라우드 비용 없이 실습 가능
    • 구성 이해에 도움: Spark를 직접 설치하고 설정해보는 과정에서 아키텍처 이해에 큰 도움
    • 간단한 테스트에 적합: 소규모 데이터(수MB~수백MB) 기준으로 대부분의 Spark API를 충분히 학습 가능
    • 오프라인 환경에서도 실습 가능
  2. 구성 방법
    • Spark Standalone 모드로 설치
    • Jupyter + PySpark 조합으로 실습 환경 구성 가능
    • 로컬 클러스터(Spark Local[n]) 방식으로 멀티스레드 테스트도 가능
  3. 다른 구성 방법 (참고)
    • Docker 또는 로컬 클러스터 구성
      • Spark Master + Worker 컨테이너 구성
      • pseudo-distributed 환경에서 클러스터 개념 연습
    • 클라우드 서비스 구성
      • AWS EMR, GCP Dataproc등을 활용해 실제 클러스터 기반 Spark 작업 실행

 

 

2. 설치 환경 추천 버전

Spark실습을 위해 다음과 같은 버전을 추천드립니다.

구성 요소 추천 버전 비고
Apache Spark 3.5.x 최신 안정 버전, Scala 2.12 기반
Apache Hadoop 3.3.6 Spark 3.5.x와 호환성 우수
Java (OpenJDK) 8 또는 11 Spark와 Hadoop 모두 안정 지원
Python 3.8 ~ 3.10 PySpark 사용 시 권장 범위

 

 

3. 설치 하기 (Windows)

3.1 Python 설치

1. Anaconda Windows 버전 설치 
https://www.anaconda.com/download/success

 

Download Now | Anaconda

Anaconda is the birthplace of Python data science. We are a movement of data scientists, data-driven enterprises, and open source communities.

www.anaconda.com

 

2. Anaconda 설치 확인

Anaconda Prompt에서 Python 실행 및 위치 확인 (~/anaconda3/python.exe)

python
where python

 

 

3. Python(3.8~3.10) 가상 환경 설치 (저는 3.9 설치 했습니다.)

conda create -n <환경명> python=<버전(ex:3.8 ~ 3.10)>
conda create -n env_python3.9 python=3.9

 

4. 설치 된 후 생성된 가상 환경 확인 및 활성화

conda info --envs
conda activate env_python3.9

 

5. pyspark 설치 (*본인이 설치한 Spark version과 맞춰주기)

pyspark 최신 버전(ex pyspark==4.0.0) 설치 시 정상 동작 안될 수 있음

pip install pyspark==<설치된 Spark Version>
pip install pyspark==3.5.5

 

 

3.2 Java 설치

아래 블로그 참고해주세요.

https://syongsyong2.tistory.com/61

 

[JAVA] Windows Java SE 11 설치, 환경 변수 설정

기존에 JAVA 8 버전을 사용하다가, 호환성을 위해 JAVA 11 버전을 설치하기로 했다. 설치방법 https://www.oracle.com/java/technologies/downloads/ Download the Latest Java LTS Free Subscribe to Java SE and get the most comprehensive

syongsyong2.tistory.com

 

3.3 Spark 설치

 

Downloads | Apache Spark

Download Apache Spark™ Choose a Spark release: Choose a package type: Download Spark: Verify this release using the and project release KEYS by following these procedures. Note that Spark 3 is pre-built with Scala 2.12 in general and Spark 3.2+ provides

spark.apache.org

 

  • Spark 폴더 경로 변경
    설치된 파일 압축 푼 후 원하는 경로에 폴더를 만들어줍니다.
    저는 사용자 폴더 안에 폴더를 만들었습니다. C드라이브에 만들어줘도 상관 없습니다.

 

  • 환경 변수 등록

- 시스템 환경 변수 편집 열기

 

- 환경 변수 클릭

- SPARK_HOME이란 변수 생성 변수 값은 본인 Spark 폴더 경로 등록

(Spark 폴더를 사용자 폴더에 넣었다면 해당 사용자 변수를 추가해주고 C드라이브에 넣었다면 시스템 변수를 추가해줍니다.)

 

- 정상적으로 등록됐는지 확인

ehco %SPARK_HOME%

 

 

3.4 Hadoop 설치

 

  • winutils Hadoop 다운로드 (포스팅 기준 Hadoop = 3.3.6)

https://github.com/cdarlint/winutils

 

GitHub - cdarlint/winutils: winutils.exe hadoop.dll and hdfs.dll binaries for hadoop windows

winutils.exe hadoop.dll and hdfs.dll binaries for hadoop windows - cdarlint/winutils

github.com

 

  • 다운로드된 Hadoop 폴더를 원하는 경로로 이동
    (저는 Spark와 마찬가지로 사용자 폴더 아래에 넣었습니다.)

  • 환경 변수 등록

  • 등록 확인

 

 

4. Spark 실행해보기

  • python 접속
python

 

  • SparkSession 생성
from pyspark.sql import SparkSession

spark = SparkSession.builder \
    .master("local[1]") \
    .appName("SparkTest") \
    .getOrCreate()

df = spark.createDataFrame([(1, "a"), (2, "b")], ["id", "value"])
df.show()

 

  • Web UI 접속되는지 확인
    localhost:4040으로 접속

 

 

Web UI까지 확인 되었으면 Spark 환경구성은 완료된겁니다!

다음 포스팅에서 본격적으로 Spark에 대해 배워보고 사용해봅시다.