Можем ли мы запустить скрипт pyspark-python снаружи оболочки pyspark? - PullRequest
0 голосов
/ 11 мая 2018

Мой скрипт pyspark - m.py, он содержит

l = [1,2,3,4,7,5,6,7,8,9,0]
k = sc.parallelize(l)
type(k)

Когда я выполняю spark-submit m.py

   SPARK_MAJOR_VERSION is set to 2, using Spark2
   Traceback (most recent call last):
   File "/root/m.py", line 3, in <module>
   k = sc.parallelize(l)
   NameError: name 'sc' is not defined

Есть ли способ, как мы можем запустить скрипт снаружив pyspark-shell я застрял ??

Также, когда я запускаю pyspark и затем набираю:

import m

Снова появляется ошибка:

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "m.py", line 3, in <module>
k = sc.parallelize(l)
NameError: name 'sc' is not defined

Ответы [ 2 ]

0 голосов
/ 11 мая 2018

В вашей программе драйвера сначала убедитесь, что вы создали переменную sparkContext. Как я вижу, вы напрямую использовали 'sc', не инициализируя его. Затем вы можете запустить вашу программу:

from pyspark import SparkContext

sc = SparkContext.getOrCreate()

import m.py
0 голосов
/ 11 мая 2018

Да, вы можете, но вы должны убедиться в правильности PYTHONPATH и инициализации всех объектов, которые вы хотите использовать:

from pyspark import SparkContext

sc = SparkContext.getOrCreate()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...