빅 데이터 노트 spark 편 (2): pyspark 설치

시작 하 다
spark 의 설정 에 대해 상세 하 게 쓸 필요 가 없습니다. 여 기 는 제 가 참고 한 샤 먼 대학의 블 로 그 를 놓 고 n 년 을 끌 었 습 니 다. 저 는 드디어 단기 판 spark 를 설치 하 게 되 었 습 니 다.
환경 변수
export JAVA_HOME=/usr/lib/jvm/default-java
export HADOOP_HOME=/usr/local/hadoop
export SPARK_HOME=/usr/local/spark
export PYTHONPATH=$SPARK_HOME/python:$SPARK_HOME/python/lib/py4j-0.10.4-src.zip:$PYTHONPATH
export PYSPARK_PYTHON=python3
export PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PATH

pyspark 명령 을 직접 사용 하여 대화 창 을 시작 할 수 있 도록 설정 되 어 있 습 니 다.
실행 모드
Spark 의 실행 모드 는 Spark Context 에 전 달 된 Master URL 의 값 에 달 려 있 습 니 다.Master URL 은 다음 과 같은 형식 일 수 있 습 니 다. * local 은 Worker 스 레 드 를 사용 하여 SPARK 를 로 컬 로 실행 합 니 다 (전혀 병행 하지 않 습 니 다) * local [*] 은 논리 CPU 개수 의 스 레 드 를 사용 하여 Spark * local [K] 를 로 컬 로 실행 합 니 다. K 개의 Worker 스 레 드 를 사용 하여 Spark 를 로 컬 로 실행 합 니 다 (이상 적 인 경우 K 는 기 계 를 실행 하 는 CPU 핵 수 에 따라 설정 해 야 합 니 다) * spark://HOST:PORT 지정 한 Spark standalone master 에 연결 합 니 다.기본 포트 는 7077 입 니 다. * yarn - client 는 클 라 이언 트 모드 로 YARN 클 러 스 터 를 연결 합 니 다.클 러 스 터 의 위 치 는 HADOOPCONF_DIR 환경 변수 에서 찾 을 수 있 습 니 다. *Yarn - cluster 는 군집 모드 로 YARN 군집 을 연결 합 니 다.클 러 스 터 의 위 치 는 HADOOPCONF_DIR 환경 변수 에서 찾 을 수 있 습 니 다. *mesos://HOST:PORT 지정 한 Mesos 군집 에 연결 합 니 다.기본 인 터 페 이 스 는 5050 입 니 다.
Spark 에서 로 컬 모드 로 pyspark 를 시작 하 는 명령 은 주로 다음 과 같은 매개 변 수 를 포함 합 니 다. – master: 이 매개 변 수 는 현재 pyspark 가 어느 master 에 연결 해 야 하 는 지 를 표시 합 니 다. local [*] 이 라면 로 컬 모드 로 pyspark 를 시작 하 는 것 입 니 다. 그 중에서 괄호 안의 별 표 는 몇 개의 CPU 핵심 (core) 을 사용 해 야 하 는 지 를 표시 합 니 다. –jars: 이 매개 변 수 는 관련 JAR 가방 을 CLASSPATH 에 추가 하 는 데 사 용 됩 니 다.jar 패키지 가 여러 개 있 으 면 쉼표 구분자 로 연결 할 수 있 습 니 다.
예 를 들 어 로 컬 모드 를 사용 하려 면 4 개의 CPU 핵심 에서 pyspark 를 실행 하 십시오.
cd /usr/local/spark
./bin/pyspark --master local[4]
cd /usr/local/spark
./bin/pyspark --master local[4] --jars code.jar 

Spark 독립 응용 프로그램 프로 그래 밍
from pyspark import SparkContext
sc = SparkContext( 'local', 'test')
logFile = "file:///usr/local/spark/README.md"
logData = sc.textFile(logFile, 2).cache()
numAs = logData.filter(lambda line: 'a' in line).count()
numBs = logData.filter(lambda line: 'b' in line).count()
print('Lines with a: %s, Lines with b: %s' % (numAs, numBs))

저장 후 바로 python 으로 실행 하면 됩 니 다.

좋은 웹페이지 즐겨찾기