Apache spark 使用常规Jupyter笔记本导入PypSpark软件包
除了正确导入包之外,Apache spark 使用常规Jupyter笔记本导入PypSpark软件包,apache-spark,pyspark,jupyter-notebook,Apache Spark,Pyspark,Jupyter Notebook,除了正确导入包之外,pyspark实际上在做什么?是否可以使用一个普通的jupyter笔记本,然后导入所需内容?是的,这是可能的,但可能会很痛苦。虽然Python本身不是问题,您只需要设置$SPARK_HOME,添加$SPARK_HOME/Python(如果无法访问,则添加$SPARK_HOME/Python/lib/py4j-[VERSION]-src.zip)PySpark脚本也可以处理JVM设置(--packages,--jars--conf,等等) 可以使用PYSPARK\u SUBMI
pyspark
实际上在做什么?是否可以使用一个普通的jupyter笔记本
,然后导入所需内容?是的,这是可能的,但可能会很痛苦。虽然Python本身不是问题,您只需要设置$SPARK_HOME
,添加$SPARK_HOME/Python
(如果无法访问,则添加$SPARK_HOME/Python/lib/py4j-[VERSION]-src.zip
)PySpark脚本也可以处理JVM设置(--packages
,--jars
--conf
,等等)
可以使用PYSPARK\u SUBMIT\u ARGS
变量或使用$SPARK\u HOME/conf
(例如,请参阅)
有一个描述示例配置的旧版本,据我所知,它仍然有效。
< p>您可以考虑为Juyter创建PyScar内核——它将为您导入PySCAPK软件包。 创建文件(需要先创建目录;对于旧版本,它可能位于其他位置): 内容如下:{
"display_name": "pySpark (Spark 1.6.0)",
"language": "python",
"argv": [
"/usr/bin/python2",
"-m",
"IPython.kernel",
"-f",
"{connection_file}"
],
"env": {
"SPARK_HOME": "/usr/local/lib/spark-1.6.0-bin-hadoop2.6",
"PYTHONPATH": "/usr/local/lib/spark-1.6.0-bin-hadoop2.6/python/:/usr/local/lib/spark-1.6.0-bin-hadoop2.6/python/lib/py4j-0.9-src.zip",
"PYTHONSTARTUP": "/usr/local/lib/spark-1.6.0-bin-hadoop2.6/python/pyspark/shell.py",
"PYSPARK_SUBMIT_ARGS": "pyspark-shell"
}
}
适当更改Spark的路径。假设您尚未创建上下文,我希望使用
PYSPARK\u submit\u args设置提交args
:
import os
os.environ['PYSPARK_SUBMIT_ARGS'] = '--driver-memory 15g --packages com.databricks:spark-csv_2.10:1.3.0 pyspark-shell'
没有什么反对
pyspark
,只是想了解Spark(pyspark)是如何工作的。如果我想发送我自己的py
库,该库有几个类,等等,怎么样?@AlbertoBonsanto一如既往。如果可能,在workers上安装或使用pyfile发送。您在这方面遇到过任何问题吗?文档非常模糊,我试图这样做,但在Python
或Scala
中都没有任何积极的结果,我必须再试一次。
import os
os.environ['PYSPARK_SUBMIT_ARGS'] = '--driver-memory 15g --packages com.databricks:spark-csv_2.10:1.3.0 pyspark-shell'