首页 > 解决方案 > Pandas 可以在 Spark 上运行吗?

问题描述

我们有一个 Spark 集群,用于在 Python 中执行各种金融数据集的分析,范围高达数百 TB。它适用于那些熟悉 Spark 的人,但最近我们有一些更熟悉 Pandas 的数据科学家要求使用 Pandas 而不是 Spark。Spark 的主要优势在于它专为分布式处理而设计,可以处理更大的数据集,因此我们一直在研究建立一个 Dask 集群。

但这让我开始思考:是否存在一些概念上的原因,为什么 Pandas 脚本无法通过实现兼容层将 Pandas 原语转换为 Spark 原语,从而无法在 Spark 集群上运行,就像 Dask 的工作方式一样?或者它们在某些方面有根本的不同?

标签: pandasapache-sparkdask

解决方案


大多数 Spark 集群使用Apache Yarn在多个节点上部署 Spark。这些集群还使用 Yarn 部署其他服务,如 Hive、Flink、Hadoop MapReduce 等。任何可以与 Yarn 通信的应用程序都可能能够在您的集群上本地运行;Spark 就是这样一种应用程序。

您现在可以使用Dask Yarn项目在您的 Spark/Yarn 集群上运行Dask Dataframes(这是当今最接近并行 Pandas 数据帧的东西) 。


推荐阅读