【问题标题】:Invoke Jupyter Notebook from a webapplication in cloud从云中的 Web 应用程序调用 Jupyter Notebook
【发布时间】:2017-02-15 17:07:03
【问题描述】:

我有一个 jupyter 笔记本,它在 AWS EMR 集群上使用 Spark 执行一些计算。我已经对其进行了配置,以便我可以通过浏览器访问并运行我的笔记本进行机器学习。 我正在寻找能够让我按计划或从 AWS 上运行的 Web 应用程序按需触发笔记本的解决方案。

我查看了 nbconvert,它允许从终端运行笔记本并执行各种格式的转换。但是,我不清楚如何从 Web 应用程序触发它。

大声思考
似乎我想让 EMR 集群启动并运行,然后可能让 Web 应用程序调用集群上的脚本,该脚本将使用 nbconvert 并运行笔记本?

【问题讨论】:

  • “来自网络应用程序”——太模糊了。这个“网络应用程序”在运行什么?它只是 Amazon Linux,对吧?因此,您可以尝试在安装了 Python 和 Jupyter 的任何地方运行 nbconvert
  • 如果外部事件“运行笔记本”会发生什么?例如,打开该笔记本的另一个浏览器窗口是否会更新其单元格?听起来您正试图在使用 jupyter 进行原型制作和制作生产版本之间节省一步,并且可能忽略了笔记本原型和生产版本之间必然存在差异,因为它们有不同的要求和受众。
  • @cricket_007 - 是的,Web 应用程序具有 Amazon Linux。但是,如果您安装 Python 和 Jupyter 并在本地运行,它在本地运行是否正确?我正在执行的操作需要 EMR 集群中的一些节点,因为它会进行一些处理
  • 远程运行...spark-submit --master <address_here>。您需要配置 Jupyter 内核来设置主地址。我建议您将笔记本代码提取到您提交给 spark 的 .py 文件中
  • @cricket_007 我已经将笔记本转换为 .py - 但我想我不清楚如何使用它。由于 jupyter 笔记本只是一个 Web 界面 - 我想我可以按照您的建议使用 spark-submit 对 EMR 集群运行它?

标签: apache-spark remote-access jupyter


【解决方案1】:

我们为 Jupyter 笔记本服务器编写了一个简单的扩展,可让您使用 HTTP 请求执行笔记本:https://github.com/EniramLtd/jupyter-invoke

Jupyter Kernel Gateway 也提供类似的功能。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-13
    • 2022-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-03
    相关资源
    最近更新 更多