首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在IPython笔记本中加载jar依赖项

如何在IPython笔记本中加载jar依赖项
EN

Stack Overflow用户
提问于 2015-11-25 11:46:12
回答 2查看 9.6K关注 0票数 8

This page鼓励我尝试使用spark-csv来读取PySpark中的.csv文件。我发现有几篇文章描述了如何使用spark-csv,比如this

但是我无法通过在启动过程中包含.jar文件或包扩展名来初始化ipython实例,这可以通过spark-shell来完成。

也就是说,它不是

代码语言:javascript
复制
ipython notebook --profile=pyspark

我试过了

代码语言:javascript
复制
ipython notebook --profile=pyspark --packages com.databricks:spark-csv_2.10:1.0.3

但它不受支持。

请给我建议。

EN

回答 2

Stack Overflow用户

发布于 2015-11-25 12:26:19

您可以简单地在PYSPARK_SUBMIT_ARGS变量中传递它。例如:

代码语言:javascript
复制
export PACKAGES="com.databricks:spark-csv_2.11:1.3.0"
export PYSPARK_SUBMIT_ARGS="--packages ${PACKAGES} pyspark-shell"

这些属性也可以在SparkContext / SparkSession和相应的JVM启动之前在您的代码中动态设置:

代码语言:javascript
复制
packages = "com.databricks:spark-csv_2.11:1.3.0"

os.environ["PYSPARK_SUBMIT_ARGS"] = (
    "--packages {0} pyspark-shell".format(packages)
)
票数 18
EN

Stack Overflow用户

发布于 2016-01-29 01:11:16

我相信您也可以将其作为变量添加到spark-defaults.conf文件中。所以就像这样:

代码语言:javascript
复制
spark.jars.packages    com.databricks:spark-csv_2.10:1.3.0

这将在您每次启动驱动程序时将spark-csv库加载到PySpark中。

显然,zero的答案更加灵活,因为您可以在导入PySpark包之前将以下代码行添加到PySpark应用程序中:

代码语言:javascript
复制
import os
os.environ['PYSPARK_SUBMIT_ARGS'] = '--packages com.databricks:spark-csv_2.10:1.3.0 pyspark-shell'

from pyspark import SparkContext, SparkConf

通过这种方式,您只需导入脚本实际需要的包。

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33908156

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档