wget https://dlcdn.apache.org/spark/spark-3.2.4/spark-3.2.4-bin-hadoop3.2.tgz
해서 다운로드 받기
tar xzf spark-3.2.4-bin-hadoop3.2.tgz
압축 해제
mv ./spark-3.2.4-bin-hadoop3.2 ./spark
이름 바꾸기
/home/hadoop/spark/conf
경로에 강사님이 올려주신 파일 3개 넣기
설정후 source ~/.bashrc
써서 적용시키기
pyspark
명령어를 실행
exit()로 나오고 다음 세팅 준비
pip install jupyter #주피터 설치
jupyter notebook --generate-config
jupyter notebook --generate-config
ipython
실행
from notebook.auth import passwd
passwd()
- 자신의 원하는 암호 입력 / 입력하고 나오는 문자열 복사해두기(이후에 편집기에서 넣어야 됨)vim ~/.jupyter/jupyter_notebook_config.py
편집기 아래와 같이 수정136번 줄 : 모든 도메인에서 접속 가능하도록 설정
450번 줄 : 노트북 디렉토리 설정
458번 줄 : 주피터 노트북이 시작될 때 웹 브라우저를 자동으로 열지 않도록 함
469번 줄 : 주피터 노트북에 암호를 설정 (아까 복사해둔 문자열 복사)
mkdir workspace
pyspark --master yarn --num-executors 3
nohup pyspark --master yarn --num-executors 3 &
위 명령어 실행 후 화면에 아래와 같은 것이 보이면 http://client:8888
로 들어간다.
이후, 아래 명령어 실행
from pyspark.sql import SparkSession
SparkSession
- SparkSession은 Apache Spark 애플리케이션을 시작하는데 필요한 프로그래밍 진입점(entry point)이다.
- 이를 통해 DataFrame과 Dataset의 생성과 작업을 관리하고, cluster manager와 application name, executor memory, number of executor cores 등의 Spark 애플리케이션 설정을 구성할 수 있다.
- 또한, SparkSession은 다양한 데이터 소스와 직접 연결할 수 있는 read 및 write 메서드를 지원한다.
jupyter Directory에 spark 예제.ipynb와 hflight.csv 파일 업로드
참고
- spark는 코드를 다 만들고 실행하면 실행 계획만!
- show나 action을 통해 실행이 일어남!
다음시간에 사용할 파일
Parquet이란?
- 대량의 데이터를 효율적으로 저장하고 처리하기 위한 열 지향(컬럼 기반) 파일 형식이다. Parquet 파일은 대규모 데이터 처리를 위해 설계되었으며, Hadoop 기반의 분산 데이터 처리 시스템인 Apache Hadoop, Apache Spark, Apache Hive 등에서 널리 사용된다.
Parquet은 다양한 데이터 처리 작업에 적합한 형식을 제공한다. 일반적으로 데이터 웨어하우스, 비즈니스 인텔리전스 및 대규모 분석 시나리오에서 사용되며, 특히 대규모 데이터 세트에서의 쿼리 성능을 향상시킬 수 있다. Parquet 파일은 데이터를 컬럼 기반으로 저장하므로 필요한 컬럼만 읽거나 필터링할 수 있어서 읽기 작업의 효율성을 높인다. 또한 압축 및 직렬화 알고리즘을 사용하여 저장 공간을 절약하고 데이터 전송 속도를 높일 수 있다.