2015-10-09 3 views
0

Итак, я пытаюсь создать простое приложение Flask, которое использует искру через IBM Bluemix. Сценарий python выглядит следующим образом:Приложение Pyspark в bluemix

from flask import Flask 
import os 

from pyspark import SparkContext 
sc = SparkContext('local') 

app = Flask(__name__) 

sc = SparkContext('local') 

port = int(os.getenv('VCAP_APP_PORT')) 

@app.route('/') 
def hello_world(): 
    lines = sc.textFile("Input.txt") 
    return 'Hello World!' + str(lines.count()) 

if __name__ == "__main__": 
    app.run(host='0.0.0.0', port=port) 

Файл требований указывает флажок как обязательное условие для моего приложения. И потом, PROCFILE содержит следующую команду для запуска моего приложения:

web: pyspark hello.py 

Однако, когда я пытаюсь развернуть мое приложение в bluemix, приложение не запустится. Я знаю, что Spark уже является сервисом в bluemix, поэтому мне не нужно ничего устанавливать, чтобы запустить искровое приложение. Тем не менее, я не знаю, какую команду следует использовать в Procfile, чтобы заставить мое приложение работать, что, я думаю, является причиной проблемы, так как сценарий отлично работает, когда я удаляю искровой код и выполняю его как обычное приложение python через питона hello.py

ответ

1

на основе Спарка службы документации [1],

для беты, аналитика для службы искрового Apache может быть использована только как часть Спарка IPython шаблонного.

[1] http://spark-service-attr-yp.ng.bluemix.net/spark_service_attr/documentation.html

+0

Означает ли это, что единственный способ, которым я могу создать приложение с pyspark является использование Jupyter ноутбуков? –

+0

Исправить. Бета-версия работает только с этими ноутбуками. –

+0

Получил! Большое спасибо! –

Смежные вопросы