循环内的计算在pyspark中花费太多时间

时间:2019-04-02 11:59:59

标签: pyspark

我已经在循环中进行了一些计算,由于它被困在镶木地板文件的编写中

  • 尝试在df上重新分区日期
  • 使用udf计算
  • 当我们使用show()方法时,输出仅在5分钟内出现
for i in range(61):
    df = df.withColumn('abc'+str(i),when(lit(i+1)>(df[col_3']+3),None).otherwise(df['col_1'] - (df['col'+str(i)] * (1.0 - df['col_2']) + df['col_2'] * df['col'+str(i)])))

在spark UI的这一步中,所有数据都集中在一个大约3 GB的节点上,其余节点的数据以字节为单位。 请帮助优化循环并减少编写时间

0 个答案:

没有答案