Итак, я пытаюсь создать простое приложение 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
Означает ли это, что единственный способ, которым я могу создать приложение с pyspark является использование Jupyter ноутбуков? –
Исправить. Бета-версия работает только с этими ноутбуками. –
Получил! Большое спасибо! –