簡體   English   中英

在 Jupyter 筆記本中運行 pySpark - Windows

[英]Running pySpark in Jupyter notebooks - Windows

我想從 Jupyter notebook 運行 pySpark。 我下載並安裝了帶有 Juptyer 的 Anaconda。 我創建了以下幾行

 from pyspark import SparkConf, SparkContext
 conf = SparkConf().setMaster("local").setAppName("My App")
 sc = SparkContext(conf = conf)

我收到以下錯誤

ImportError                               Traceback (most recent call last)
<ipython-input-3-98c83f0bd5ff> in <module>()
  ----> 1 from pyspark import SparkConf, SparkContext
  2 conf = SparkConf().setMaster("local").setAppName("My App")
  3 sc = SparkContext(conf = conf)

 C:\software\spark\spark-1.6.2-bin-hadoop2.6\python\pyspark\__init__.py in   <module>()
 39 
 40 from pyspark.conf import SparkConf
  ---> 41 from pyspark.context import SparkContext
 42 from pyspark.rdd import RDD
 43 from pyspark.files import SparkFiles

 C:\software\spark\spark-1.6.2-bin-hadoop2.6\python\pyspark\context.py in <module>()
 26 from tempfile import NamedTemporaryFile
 27 
 ---> 28 from pyspark import accumulators
 29 from pyspark.accumulators import Accumulator
 30 from pyspark.broadcast import Broadcast

 ImportError: cannot import name accumulators

根據 Stackoverflow importing pyspark in python shell 中的答案,我嘗試添加以下指向 spark/python 目錄的環境變量 PYTHONPATH

但這沒有幫助

這對我有用:

import os
import sys

spark_path = "D:\spark"

os.environ['SPARK_HOME'] = spark_path
os.environ['HADOOP_HOME'] = spark_path

sys.path.append(spark_path + "/bin")
sys.path.append(spark_path + "/python")
sys.path.append(spark_path + "/python/pyspark/")
sys.path.append(spark_path + "/python/lib")
sys.path.append(spark_path + "/python/lib/pyspark.zip")
sys.path.append(spark_path + "/python/lib/py4j-0.9-src.zip")

from pyspark import SparkContext
from pyspark import SparkConf

sc = SparkContext("local", "test")

驗證:

In [2]: sc
Out[2]: <pyspark.context.SparkContext at 0x707ccf8>

2018版

使用 ANACONDA NAVIGATOR 在 Windows 10 JUPYTER-NOTEBOOK 上安裝 PYSPARK

第 1 步

下載包

1) spark-2.2.0-bin-hadoop2.7.tgz下載

2) java jdk 8 版本下載

3) Anaconda v 5.2下載

4) scala-2.12.6.msi下載

5) hadoop v2.7.1下載

第 2 步

C:/驅動器中制作 SPARK 文件夾並將所有內容放入其中它看起來像這樣

注意:在安裝 SCALA 的過程中,在 Spark 文件夾中給出 SCALA 的路徑

第 3 步

現在設置新的 WINDOWS 環境變量

  1. HADOOP_HOME=C:\\spark\\hadoop

  2. JAVA_HOME=C:\\Program Files\\Java\\jdk1.8.0_151

  3. SCALA_HOME=C:\\spark\\scala\\bin

  4. SPARK_HOME=C:\\spark\\spark\\bin

  5. PYSPARK_PYTHON=C:\\Users\\user\\Anaconda3\\python.exe

  6. PYSPARK_DRIVER_PYTHON=C:\\Users\\user\\Anaconda3\\Scripts\\jupyter.exe

  7. PYSPARK_DRIVER_PYTHON_OPTS=notebook

  8. 現在選擇火花路徑

    單擊編輯並添加新

    將“ C:\\spark\\spark\\bin ”添加到變量“Path” Windows

第 4 步

  • 創建要存儲 Jupyter-Notebook 輸出和文件的文件夾
  • 之后打開 Anaconda 命令提示符和cd 文件夾名稱
  • 然后進入Pyspark

就是這樣,您的瀏覽器將彈出 Juypter localhost

第 5 步

檢查 pyspark 是否正常工作!

輸入簡單代碼並運行

from pyspark.sql import Row
a = Row(name = 'Vinay' , age=22 , height=165)
print("a: ",a)

在 Jupyter 筆記本中運行 pySpark - Windows

JAVA8 : https://www.guru99.com/install-java.html

阿納康達: https ://www.anaconda.com/distribution/

jupyter 中的 Pyspark: https ://changhsinlee.com/install-pyspark-windows-jupyter/

import findspark

findspark.init()

from pyspark.sql import SparkSession
from pyspark.sql.functions import *
from pyspark.sql.types import *

spark = SparkSession.builder.appName('test').getOrCreate()
data = [(1, "siva", 100), (2, "siva2", 200),(3, "siva3", 300),(4, "siva4", 400),(5, "siva5", 500)]
schema = ['id', 'name', 'sallary']

df = spark.createDataFrame(data, schema=schema)
df.show()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM