簡體   English   中英

spark 2.0-java.io.IOException:無法運行程序“ jupyter”:error = 2,沒有這樣的文件或目錄

[英]spark 2.0 - java.io.IOException: Cannot run program “jupyter”: error=2, No such file or directory

我正在使用Jupyter筆記本嘗試打火。

在我的Notetbook中,我嘗試了一個Kmean:

from pyspark.ml.clustering import KMeans
from sklearn               import datasets
import pandas as pd

spark = SparkSession\
        .builder\
        .appName("PythonKMeansExample")\
        .getOrCreate()

iris       = datasets.load_iris()
pd_df      = pd.DataFrame(iris['data'])
spark_df   = spark.createDataFrame(pd_df, ["features"])
estimator  = KMeans(k=3, seed=1)

一切順利,然后我適合模型:

estimator.fit(spark_df)

我有一個錯誤:

16/08/16 22:39:58 ERROR Executor: Exception in task 0.2 in stage 0.0 (TID 24)
java.io.IOException: Cannot run program "jupyter": error=2, No such file or directory

Caused by: java.io.IOException: error=2, No such file or directory

星火在哪里尋找Jupyter? 如果我可以使用jupyter筆記本,為什么找不到它? 該怎么辦 ?..

如代碼在https://github.com/apache/spark/blob/master/python/pyspark/context.py#L180中所述

self.pythonExec = os.environ.get("PYSPARK_PYTHON", 'python')

所以我覺得這個錯誤是由環境變量引起的PYSPARK_PYTHON ,表示每個火花節點,pyspark開始的時候,那蟒蛇位置PYSPARK_PYTHON這是從SYS ENV將被注入到所有sparknodes,使

  1. 可以通過解決

     export PYSPARK_PYTHON=/usr/bin/python 

    在差異節點上的版本相同。 然后開始:

     pyspark 
  2. 如果群集的本地節點和diff節點之間存在python的diff版本,則會發生另一個版本沖突錯誤。

  3. 您使用的交互式python的版本應與集群中其他節點的版本相同。

暫無
暫無

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

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