【发布时间】:2020-10-06 04:01:42
【问题描述】:
我是 Spark 社区的新手。如果这个问题没有意义,请忽略。
我的 PySpark Dataframe 在“排序”中只花费一小部分时间(以毫秒为单位),但移动数据非常昂贵(> 14 秒)。
解释: 我有一个巨大的 Arrow RecordBatches 集合,它平均分布在我所有工作节点的内存中(在 Plasma_store 中)。目前,我正在将所有这些 RecordBatches 收集回我的主节点,合并它们,并将它们转换为单个 Spark Dataframe。然后我对该数据框应用排序功能。
Spark DataFrame 是一个集群分布式数据集合。
所以我的问题是: 是否可以从工作节点内存中所有已分发的 Arrow RecordBatches 数据集合中创建 Spark 数据帧?这样数据应该保留在各个工作节点的内存中(而不是将其带到主节点,合并,然后创建分布式数据帧)。
谢谢!
【问题讨论】:
标签: apache-spark pyspark-dataframes apache-arrow