Вычисления внутри цикла занимают слишком много времени в pyspark - PullRequest
0 голосов
/ 02 апреля 2019

Я сделал несколько вычислений внутри цикла, из-за чего он застревает при записи в файле паркета

  • Пробное перераспределение по 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 на этом шаге все данные сосредоточены на одном узле, приблизительно 3 ГБ, а остальные узлы имеютданные в байтах.Пожалуйста, помогите оптимизировать цикл и сократить время записи

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...