当前位置: 首页 > 知识库问答 >
问题:

火花凝聚更多分区

谭骏
2023-03-14

我有一个spark工作,处理大量数据并将结果写入S3。在处理过程中,我可能有超过5000个分区。在写入S3之前,我想减少分区的数量,因为每个分区都是作为一个文件写入的。

在其他一些情况下,处理过程中可能只有50个分区。如果我想合并而不是因为性能原因重新分区,会发生什么。

从文档来看,它说只有当输出分区的数量少于输入时才应该使用coalesce,但是如果不是,它似乎不会导致错误吗?它会导致数据不正确或性能问题吗?

我试图避免计算RDD,以确定分区是否超过输出限制,以及是否合并。

共有1个答案

訾俊名
2023-03-14

使用默认的PartitionCoalescer,如果分区数大于当前的分区数,并且没有将shuffle设置为true,则分区数保持不变。

coalesce与另一方面的shuffle设置为true相当于重新分区,具有相同的numPartitions值。

 类似资料:
  • 我试图从聚合原理的角度来理解火花流。Spark DF 基于迷你批次,计算在特定时间窗口内出现的迷你批次上完成。 假设我们有数据作为- 然后首先对Window_period_1进行计算,然后对Window_period_2进行计算。如果我需要将新的传入数据与历史数据一起使用,比如说Window_priod_new与Window_pperid_1和Window_perid_2的数据之间的分组函数,我该

  • 一些脚本在工作时什么也不做,当我手动运行它们时,其中一个失败了,出现了以下消息: 错误SparkUI:未能绑定SparkUI java.net.bindexception:地址已在使用:服务“SparkUI”在重试16次后失败! 所以我想知道是否有一种特定的方法来并行运行脚本?

  • 我有5个表存储为CSV文件(A.CSV、B.CSV、C.CSV、D.CSV、E.CSV)。每个文件按日期分区。如果文件夹结构如下:

  • 是否有可能在火花中将多个列爆炸成一个新列?我有一个如下所示的数据框: 期望输出: 到目前为止,我尝试过: 这不起作用。非常感谢您的任何建议。

  • 本文向大家介绍Python聚类算法之凝聚层次聚类实例分析,包括了Python聚类算法之凝聚层次聚类实例分析的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python聚类算法之凝聚层次聚类。分享给大家供大家参考,具体如下: 凝聚层次聚类:所谓凝聚的,指的是该算法初始时,将每个点作为一个簇,每一步合并两个最接近的簇。另外即使到最后,对于噪音点或是离群点也往往还是各占一簇的,除非过度合并。对于

  • 我有一个运行sql联接的火花作业。 我可视化的DAG和它创建+5阶段的每个加入。无论如何,在DAG有大约40个阶段的阶段之后,下一个步骤总是以异常失败,即在8次迭代之后,每个迭代有5个阶段。 每个节点3个实例(R3.2xLarge)=>12个执行器实例