问题标签 [pyspark]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
16522 浏览

python - 在 Spark\PySpark 中保存\加载模型的正确方法是什么

我正在使用 PySpark 和 MLlib 使用 Spark 1.3.0,我需要保存和加载我的模型。我使用这样的代码(取自官方文档

在我尝试使用 model0 之后,我得到了一个很长的回溯,并以此结束:

所以我的问题是——我做错了什么吗?据我调试,我的模型存储在(本地和 HDFS 上)并且它们包含许多带有一些数据的文件。我感觉模型保存正确,但可能没有正确加载。我也四处搜索,但没有发现任何相关内容。

看起来这个保存\加载功能最近已在 Spark 1.3.0 中添加,因此我还有另一个问题 - 在 1.3.0 版本之前保存\加载模型的推荐方法是什么?我还没有找到任何好的方法来做到这一点,至少对于 Python 而言。我也尝试过 Pickle,但遇到了与此处所述相同的问题Save Apache Spark mllib model in python

0 投票
1 回答
2495 浏览

python - 如何使用 PySpark 从 Panda 数据帧写入 Spark SQL 表?

pandas.DataFrame.to_sql() 方法可以让您将数据框的结果写入数据库。这在标准 RDBMS 的上下文中运行良好。但是,如何使用 PySpark 将其与 Spark SQL 一起使用?我需要这个方法的连接参数 - 那是什么?

谢谢,马特

0 投票
1 回答
8086 浏览

memory - 如何从 iPython 接口中找出 pyspark 的内存量?

我用命令启动

Spark向我打招呼

但是使用 sc,我无法找到它拥有的内存。如何找出这一点,如果可能的话,如何将其设置为另一个值。

0 投票
1 回答
254 浏览

pyspark - 如何在pySpark中的distnct后压缩

以下程序在 zip 步骤中失败。

产生的错误取决于是否指定了多个分区。

我明白那个

两个 RDD [必须] 具有相同数量的分区和每个分区中相同数量的元素。

解决此限制的最佳方法是什么?

我一直在使用以下代码执行操作,但我希望找到更有效的方法。

0 投票
2 回答
19312 浏览

python - How to group by multiple keys in spark?

I have a bunch of tuples which are in form of composite keys and values. For example,

I want to perform sql like operations on this collection, where I can aggregate the information based on id[1..n] or pd[1..n] . I want to implement using the vanilla pyspark apis and not using SQLContext. In my current implementation I am reading from a bunch of files and merging the RDD.

I intend to create an aggregated array as a value. For example,

where 5.0,7.5,8.1 represent [t1,t2,t3] . I am currently, achieving the same by vanilla python code using dictionaries. It works fine for smaller data sets. But I worry as this may not scale for larger data sets. Is there an efficient way achieving the same using pyspark apis ?

0 投票
1 回答
1880 浏览

apache-spark - 用 spark 4 秒来计算 13M 行是否有意义?

我是 spark 新手,目前正在测试 pySpark。它的运行速度比我预期的要慢,我想知道我是否设置正确。

我的问题:

我有一个由 57 个分区组成的 RDD(每个分区约 30Mb),所有分区都被缓存(内存中的总大小为 1700MB)。RDD 包含 13M 个字符串,每个字符串约 300 个字符。所以一般来说不是大数据集。那么为什么运行 count() 需要 4 秒?

我检查了 UI,似乎对于“计数”作业,它运行 57 个任务(如预期的那样),每个任务需要 0.6 秒,这对我来说似乎很慢。

我在谷歌云上运行,在 Mesos 之上,有 1 个主节点和 2 个从节点。每个实例有 8 个内核和 30 GB 的 RAM。

我的问题:

  1. 每个任务 0.6 秒有意义吗?

  2. 根据 UI,每个执行器花费 18 秒运行任务。假设每个节点有 8 个核心,这应该需要 2.25 秒。那么我们是如何在最后达到 4 秒的呢?

编码:

0 投票
1 回答
5021 浏览

python - pyspark:使用 spark-submit 发送 jar 依赖项

我编写了一个 pyspark 脚本,它读取两个 json 文件,coGroup并将结果发送到 elasticsearch 集群;当我在本地运行它时,一切(大部分)都按预期工作,我下载了和类的elasticsearch-hadoopjar 文件,然后使用参数使用 pyspark 运行我的作业,我可以看到我的 elasticsearch 集群中出现的文档。org.elasticsearch.hadoop.mr.EsOutputFormatorg.elasticsearch.hadoop.mr.LinkedMapWritable--jars

但是,当我尝试在 spark 集群上运行它时,出现此错误:

这对我来说似乎很清楚:elasticsearch-hadoop工人无法使用罐子;所以问题是:我如何将它与我的应用程序一起发送?我可以使用sc.addPyFilepython 依赖项,但它不适用于 jars,并且使用的--jars参数spark-submit也无济于事。

0 投票
5 回答
34758 浏览

authentication - 通过 Spark 本地读取 S3 文件(或更好:pyspark)

0 投票
1 回答
1803 浏览

python - 如何在 Amazon EMR 上运行 PySpark 作业(使用自定义模块)?

我想运行一个在我的(本地)机器上运行良好的 PySpark 程序。

我正在运行一个 Amazon Elastic Map Reduce 集群,并安装了所有必要的依赖项(Spark、来自 PyPI 的 Python 模块)。

现在,如何运行使用一些自定义模块的 PySpark 作业?我已经尝试了大概半天的很多东西,现在,无济于事。到目前为止我发现的最好的命令是:

但是,Python 失败了,因为它找不到custom_module.py. 不过,它似乎试图复制它:

INFO yarn.Client:上传资源 s3://bucket/custom_module.py -> hdfs://...:9000/user/hadoop/.sparkStaging/application_..._0001/custom_module.py

信息 s3n.S3NativeFileSystem:打开 's3://bucket/custom_module.py' 进行阅读

这看起来是一个非常基本的问题,但是网络对此非常沉默,包括官方文档(Spark 文档似乎暗示了上面的命令)。

0 投票
4 回答
8315 浏览

numpy - spark-submitting 时没有名为 numpy 的模块

我正在提交一个导入 numpy 的 python 文件,但出现no module named numpy错误。

我在想我会为 numpy-python-files 拉一个鸡蛋,但我在弄清楚如何构建那个鸡蛋时遇到了麻烦。但后来我突然想到 pyspark 本身使用 numpy。引入我自己的 numpy 版本会很愚蠢。

对在这里做适当的事情有任何想法吗?