scala - Spark : how can i create local dataframe in each executor

标签 scala pandas apache-spark pyspark

在 spark scala 中,有一种方法可以像 pyspark 中的 pandas 一样在执行器中创建本地数据框。在 mappartitions 方法中,我想将迭代器转换为本地数据帧(如 python 中的 pandas 数据帧),以便可以使用数据帧功能,而不是在迭代器上手动编码它们。

最佳答案

那是不可能的。

Dataframe是 Spark 中的分布式集合。并且数据帧只能在驱动程序节点上创建(即在转换/操作之外)。

此外,在 Spark 中,您不能在其他操作中对 RDDs/Dataframes/Datasets 执行操作: 例如以下代码将产生错误。

rdd.map(v => rdd1.filter(e => e == v))

DF 和 DS 下面也有 RDD,所以那里有相同的行为。

关于scala - Spark : how can i create local dataframe in each executor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48715661/

相关文章:

list - 中缀运算符上的Scala匹配分解

optimization - 在F#/Scala中优化相互递归的标准方法是什么?

string - Scala StringLike split 方法为前导空格创建额外的双引号

python - 计算行 pandas 中最常见的值,并用该最常见的值创建一列

java - 如果某些 Kafka 节点时间偏移不同步,Spark 流作业会卡住

java - 错误 Livy Spark Server hue 3.9

Scala:Option、Some 和 ArrowAssoc 运算符

python - 通过拆分行创建新的 pandas 数据框

python - 属性错误 : 'Worksheet' object has no attribute 'set_column'

algorithm - Spark - 迭代算法的奇怪行为