Spark Dataframe 与 pandas-on Spark Dataframe

And*_*ani 9 apache-spark-sql pyspark

我对 pySpark 很陌生,但我对 Spark Dataframe (例如从 RDD 创建)和 pandas-on-spark Dataframe 之间的区别感到困惑。

  • 这些是同一个对象吗?从类型上看,它们似乎是不同的类别。
  • 如果有的话,核心区别是什么?(我知道使用 pandas-on-spark Dataframe 可以在分布式 Dataframe 上使用与 Pandas 几乎相同的语法,但我想知道是否只有这一点不同)

谢谢

nfe*_*a78 6

直接回答:

这些是同一个对象吗?从类型上看,它们似乎是不同的类别。

不,它们是完全不同的对象(类)。

如果有的话,核心区别是什么?

pySpark DataFrame 是 PySpark 库中的一个对象,具有自己的 API,可以从多种来源构建,例如:结构化数据文件、Hive 中的表、外部数据库或现有 RDD。

Pandas-on-Spark DataFrame 和 pandas DataFrame 类似。不过前者是分布式的,后者是在单机上的。相互转换时,数据在多台机器和单个客户端机器之间传输。

Pandas DataFrame 是 pandas 库中的一个对象,也有自己的 API,也可以通过多种方法构建。

另外,我建议查看有关Spark 上的 Pandas 的文档