为 Jupyter 创建 pyspark 内核

Create pyspark kernel for Jupyter

我正在寻找 Apache Toree 用作 Jupyter 的 Pyspark 内核

https://github.com/apache/incubator-toree

但是它使用的是旧版本的 Spark(1.5.1 与当前的 1.6.0)。我在这里 http://arnesund.com/2015/09/21/spark-cluster-on-openstack-with-multi-user-jupyter-notebook/ 尝试通过创建 kernel.js

使用此方法
{
 "display_name": "PySpark",
 "language": "python",
 "argv": [
  "/usr/bin/python",
  "-m",
  "ipykernel",
  "-f",
  "{connection_file}"
 ],
 "env": {
  "SPARK_HOME": "/usr/local/Cellar/apache-spark/1.6.0/libexec",
  "PYTHONPATH": "/usr/local/Cellar/apache-spark/1.6.0/libexec/python/:/usr/local/Cellar/apache-spark/1.6.0/libexec/python/lib/py4j-0.9-src.zip",
  "PYTHONSTARTUP": "/usr/local/Cellar/apache-spark/1.6.0/libexec/python/pyspark/shell.py",
  "PYSPARK_SUBMIT_ARGS": "--master local[*] pyspark-shell"
 }
}

但是,我遇到了一些问题:

  1. 我的 Mac 中没有 /jupyter/kernels 路径。所以我最终创建了这条路径 ~/.jupyter/kernels/pyspark。我不确定那是否是正确的路径。

  2. 即使拥有所有正确的路径,我仍然看不到 PySpark 在 Jupyter 中显示为内核。

我错过了什么?

Jupyter 内核应该放在 $JUPYTER_DATA_DIR 中。在 OSX 上,这是 ~/Library/Jupyter。参见:http://jupyter.readthedocs.org/en/latest/system.html

使用 python 内核启动 jupyter 笔记本,然后 运行 以下命令在 Jupyter 中初始化 pyspark。

import findspark
findspark.init()

import pyspark
sc = pyspark.SparkContext()

仅供参考:已尝试大多数配置在 Jupyter 中使用 pyspark 内核启动 Apache Toree 但没有成功,