Windows 환경에서 Spark + Python을 사용해보십시오.
계기
미국의 BigData의 담당자에게 BigData를 취급한다면 Spark에서 SQL이라든지를 분산시킨다고 해서라고 들었으므로, 조금 시험해 볼까라는 신경이 쓰였으므로 시험해 본다.
검증 환경
・Windows10 Home (Ver.1803)
환경 구축
· JDK
・Spark
· 파이썬
JDK
들어간 것 같아서 확인
java -version
이미 들어갔다. 포함되어 있지 않은 경우 필요 설치.
파이썬
Anaconda로 넣고 있지만, 만약을 위해 확인.
python --version
모듈로 findspark가 필요하기 때문에 설치하십시오.
python -m pip install findspark
스파크
이것이 이번 본근.
다운로드
winutils도 필요하므로 다운로드하십시오.
htps : // 기주 b. 이 m/s ゔぇぉぉ gh란/우우누치 ls/bぉb/마s r/하오오 p2.7.1/병/우우누치 ls. 네
배치
압축을 풀고 적절한 곳에 놓고 환경 변수를 설정하십시오.
이번에는 아래에 배치
C:\tools\spark-2.4.3-bin-hadoop2.7
※winutils.exe는 bin 안에 저장
환경 변수는
SPARK_HOME,HADOOP_HOME : 배치한 폴더(이번이라면 [C:\tools\spark-2.4.3-bin-hadoop2.7])
PATH: [%SPARK_HOME%\bin] 추가
확인
spark-shell
사용할 수 있는 상태가 되어 있다고 생각된다
pyspark
사용할 수 있는 상태가 되어 있다고 생각된다
시도해보기
Anaconda prompt에서 pyspark를 실행하고 다음을 흘려 보자.
import pyspark # only run after findspark.init()
from pyspark.sql import SparkSession
spark = SparkSession.builder.getOrCreate()
df = spark.sql('''select 'spark' as hello ''')
df.show()
움직이고 있는 것 같다.
하지만, 이것으로 대량 데이터를 심판하는 것인가? 라는 중요한 부분을 잘 모른다. . .
그리고, 또 하나의 샘플을 실행해 보았더니, 예외 발생.
import json, os, datetime, collections
from pyspark.sql import SQLContext, Row
from pyspark.sql.types import *
csv_file = r"C:\work\20190821\click_data_sample.csv"
print(csv_file)
if not os.path.exists(csv_file):
print("csv file not found at master node, will download and copy to HDFS")
whole_raw_log = sc.textFile("/user/hadoop/click_data_sample.csv")
header = whole_raw_log.first()
whole_log = whole_raw_log.filter(lambda x:x !=header).map(lambda line: line.split(","))\
.map(lambda line: [datetime.datetime.strptime(line[0].replace('"', ''), '%Y-%m-%d %H:%M:%S'), int(line[1]), line[2].replace('"', '')])
whole_log.take(3)
위의
header = whole_raw_log.first()
그런데 예외.
File "C:\tools\spark-2.4.3-bin-hadoop2.7\python\lib\py4j-0.10.7-src.zip\py4j\protocol.py", line 328, in get_return_value
py4j.protocol.Py4JJavaError: An error occurred while calling o31.partitions.
: org.apache.hadoop.mapred.InvalidInputException: Input path does not exist: file:/user/hadoop/click_data_sample.csv
? ?
file:/user/hadoop/click_data_sample.csv
어디를 가리키는거야? ?
Spark의 환경은 할 수 있었다고 해도, 쫄깃한 구조를 모르면 「사용」할 수 없을 것 같은 느낌이 든다.
참고
htps //w w. 구루 99. 이 m / pys 파 rk-Tori l. HTML
h tps : // 오오 dbi 암 gs r. 하테나 bぉg. 코m/엔트리/2018/06/27/022915
htps://k 20b에. 하테나 bぉg. 코m/엔트리/20180812/1534035813
htps : // 이 m / 토모 타구 rk / ms / 1431f692387242f4 A636
htps : // 이 m / 타카 4 사토 / ms / 4 아 b2cf9 941599f1c0
htps : // 이 m / 미야모토 k0105 / ms / bf3638607에 f6cb95f01b
Reference
이 문제에 관하여(Windows 환경에서 Spark + Python을 사용해보십시오.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ryo_naka/items/97ea6c8b63368fae1046
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
・Windows10 Home (Ver.1803)
환경 구축
· JDK
・Spark
· 파이썬
JDK
들어간 것 같아서 확인
java -version
이미 들어갔다. 포함되어 있지 않은 경우 필요 설치.
파이썬
Anaconda로 넣고 있지만, 만약을 위해 확인.
python --version
모듈로 findspark가 필요하기 때문에 설치하십시오.
python -m pip install findspark
스파크
이것이 이번 본근.
다운로드
winutils도 필요하므로 다운로드하십시오.
htps : // 기주 b. 이 m/s ゔぇぉぉ gh란/우우누치 ls/bぉb/마s r/하오오 p2.7.1/병/우우누치 ls. 네
배치
압축을 풀고 적절한 곳에 놓고 환경 변수를 설정하십시오.
이번에는 아래에 배치
C:\tools\spark-2.4.3-bin-hadoop2.7
※winutils.exe는 bin 안에 저장
환경 변수는
SPARK_HOME,HADOOP_HOME : 배치한 폴더(이번이라면 [C:\tools\spark-2.4.3-bin-hadoop2.7])
PATH: [%SPARK_HOME%\bin] 추가
확인
spark-shell
사용할 수 있는 상태가 되어 있다고 생각된다
pyspark
사용할 수 있는 상태가 되어 있다고 생각된다
시도해보기
Anaconda prompt에서 pyspark를 실행하고 다음을 흘려 보자.
import pyspark # only run after findspark.init()
from pyspark.sql import SparkSession
spark = SparkSession.builder.getOrCreate()
df = spark.sql('''select 'spark' as hello ''')
df.show()
움직이고 있는 것 같다.
하지만, 이것으로 대량 데이터를 심판하는 것인가? 라는 중요한 부분을 잘 모른다. . .
그리고, 또 하나의 샘플을 실행해 보았더니, 예외 발생.
import json, os, datetime, collections
from pyspark.sql import SQLContext, Row
from pyspark.sql.types import *
csv_file = r"C:\work\20190821\click_data_sample.csv"
print(csv_file)
if not os.path.exists(csv_file):
print("csv file not found at master node, will download and copy to HDFS")
whole_raw_log = sc.textFile("/user/hadoop/click_data_sample.csv")
header = whole_raw_log.first()
whole_log = whole_raw_log.filter(lambda x:x !=header).map(lambda line: line.split(","))\
.map(lambda line: [datetime.datetime.strptime(line[0].replace('"', ''), '%Y-%m-%d %H:%M:%S'), int(line[1]), line[2].replace('"', '')])
whole_log.take(3)
위의
header = whole_raw_log.first()
그런데 예외.
File "C:\tools\spark-2.4.3-bin-hadoop2.7\python\lib\py4j-0.10.7-src.zip\py4j\protocol.py", line 328, in get_return_value
py4j.protocol.Py4JJavaError: An error occurred while calling o31.partitions.
: org.apache.hadoop.mapred.InvalidInputException: Input path does not exist: file:/user/hadoop/click_data_sample.csv
? ?
file:/user/hadoop/click_data_sample.csv
어디를 가리키는거야? ?
Spark의 환경은 할 수 있었다고 해도, 쫄깃한 구조를 모르면 「사용」할 수 없을 것 같은 느낌이 든다.
참고
htps //w w. 구루 99. 이 m / pys 파 rk-Tori l. HTML
h tps : // 오오 dbi 암 gs r. 하테나 bぉg. 코m/엔트리/2018/06/27/022915
htps://k 20b에. 하테나 bぉg. 코m/엔트리/20180812/1534035813
htps : // 이 m / 토모 타구 rk / ms / 1431f692387242f4 A636
htps : // 이 m / 타카 4 사토 / ms / 4 아 b2cf9 941599f1c0
htps : // 이 m / 미야모토 k0105 / ms / bf3638607에 f6cb95f01b
Reference
이 문제에 관하여(Windows 환경에서 Spark + Python을 사용해보십시오.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ryo_naka/items/97ea6c8b63368fae1046
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
java -version
python --version
python -m pip install findspark
spark-shell
pyspark
Anaconda prompt에서 pyspark를 실행하고 다음을 흘려 보자.
import pyspark # only run after findspark.init()
from pyspark.sql import SparkSession
spark = SparkSession.builder.getOrCreate()
df = spark.sql('''select 'spark' as hello ''')
df.show()
움직이고 있는 것 같다.
하지만, 이것으로 대량 데이터를 심판하는 것인가? 라는 중요한 부분을 잘 모른다. . .
그리고, 또 하나의 샘플을 실행해 보았더니, 예외 발생.
import json, os, datetime, collections
from pyspark.sql import SQLContext, Row
from pyspark.sql.types import *
csv_file = r"C:\work\20190821\click_data_sample.csv"
print(csv_file)
if not os.path.exists(csv_file):
print("csv file not found at master node, will download and copy to HDFS")
whole_raw_log = sc.textFile("/user/hadoop/click_data_sample.csv")
header = whole_raw_log.first()
whole_log = whole_raw_log.filter(lambda x:x !=header).map(lambda line: line.split(","))\
.map(lambda line: [datetime.datetime.strptime(line[0].replace('"', ''), '%Y-%m-%d %H:%M:%S'), int(line[1]), line[2].replace('"', '')])
whole_log.take(3)
위의
header = whole_raw_log.first()
그런데 예외.
File "C:\tools\spark-2.4.3-bin-hadoop2.7\python\lib\py4j-0.10.7-src.zip\py4j\protocol.py", line 328, in get_return_value
py4j.protocol.Py4JJavaError: An error occurred while calling o31.partitions.
: org.apache.hadoop.mapred.InvalidInputException: Input path does not exist: file:/user/hadoop/click_data_sample.csv
? ?
file:/user/hadoop/click_data_sample.csv
어디를 가리키는거야? ?
Spark의 환경은 할 수 있었다고 해도, 쫄깃한 구조를 모르면 「사용」할 수 없을 것 같은 느낌이 든다.
참고
htps //w w. 구루 99. 이 m / pys 파 rk-Tori l. HTML
h tps : // 오오 dbi 암 gs r. 하테나 bぉg. 코m/엔트리/2018/06/27/022915
htps://k 20b에. 하테나 bぉg. 코m/엔트리/20180812/1534035813
htps : // 이 m / 토모 타구 rk / ms / 1431f692387242f4 A636
htps : // 이 m / 타카 4 사토 / ms / 4 아 b2cf9 941599f1c0
htps : // 이 m / 미야모토 k0105 / ms / bf3638607에 f6cb95f01b
Reference
이 문제에 관하여(Windows 환경에서 Spark + Python을 사용해보십시오.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ryo_naka/items/97ea6c8b63368fae1046
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Windows 환경에서 Spark + Python을 사용해보십시오.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ryo_naka/items/97ea6c8b63368fae1046텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)