Data-driven Methodology/Spark
[Spark] Jupyter Lab
goatlab
2024. 7. 15. 15:53
728x90
반응형
SMALL
디렉토리 설정
cd work/
mkdir jupyter
cd jupyter/
주피터 랩 설치 및 환경 설정
pyenv activate py3_11_9
pip install jupyterlab
jupyter lab --generate-config
처음 디렉토리로 이동하여 다음 명령을 실행한다.
cd .jupyter/
vim jupyter_lab_config.py
에디터에서 다음 코드를 c 객체 밑에 추가한다.
c.NotebookApp.ip = '0.0.0.0' # 모든 네트워크 요청 수신
c.NotebookApp.open_browser = False # 자동으로 웹 브라우저를 열지 않음
c.NotebookApp.port = 8888 # 주피터 랩 서버가 사용할 포트 번호
c.NotebookApp.token = '' # 주피터 랩 서버에 접속할 때 사용할 인증 토큰 (빈 문자열로 설정하면 토큰 인증 비활성화)
c.NotebookApp.password = '' # 주피터 랩 서버에 접속할 때 사용할 비밀번호 (빈 문자열로 설정하면 비밀번호 비활성화)
c.ServerApp.root_dir = '/home/ubuntu/work/jupyter' # 주피터 랩의 루트 디렉토리
다음 설정도 추가한다.
vim .bashrc
export PYSPARK_DRIVER_PYTHON="jupyter"
export PYSPARK_DRIVER_PYTHON_OPTS="lab"
쉘을 재시작한다.
source .bashrc
exec $SHELL
findspark는 PySpark를 사용할 때, python 환경에서 Spark를 쉽게 설정할 수 있도록 도와주는 유틸리티 패키지이다. Spark 환경 변수 설정의 번거로움을 덜어준다.
pip install findspark
인바운드 규칙에서 8888번 포트를 추가한다.
주피터 랩 실행
다음 명령어로 주피터 랩을 실행한다.
jupyter lab
런처에서 노트북 Python 3를 클릭하면 자동으로 루트 디렉토리에 ipynb 파일이 생성된다.
import findspark
findspark.init("/home/ubuntu/app/spark/spark-3.5.1-bin-hadoop3")
from pyspark.sql import SparkSession
spark = SparkSession.builder.appName("test").getOrCreate()
df = spark.read.parquet("/home/ubuntu/work/spark01/data/iris.parquet")
df.show(3)
728x90
반응형
LIST