什么是与密钥无关的映射的高性能分区策略?

时间:2019-10-09 20:22:33

标签: apache-spark pyspark aws-glue

首先,我在Glue上使用PySpark,正在读取几个非常大的CSV文件。这些CSV文件经过bzip2压缩并压缩了几GB大小。

在此处理阶段,我仅对所有行执行一个简单映射。没有加入,分组依据,过滤。只是一张地图。

假设我正在10个节点上工作。一般来说,最好是具有较高的分区数或较低的分区数?

我猜想,与所有那些节点上的可用内核无关,这个数字应该很高,以确保每个执行者在任何时候都忙于拥有少量可用数据。

因此,假设在这10个节点上有20个核心,让我们再假设个基于键的分区,那么大于40的分区可能不是一个好主意。但是在与密钥无关的映射情况下,我倾向于使用1000个或更多分区。

这有意义吗?我对这里的思考过程特别感兴趣。

0 个答案:

没有答案