Недавно я получил сообщение об ошибке «spark.driver.MaxResultSize». Я использую pyspark в режиме клиента пряжи. Код должен генерировать случайные поддельные данные для тестирования.
new_df = None
for i in range(int(2000)):
df = spark.range(0,10000)
temp = df.select(f.col("id").alias('user_id'), f.round(1000 * f.abs(f.randn(seed=27))).alias("duration"))
if new_df is None:
new_df = temp
else:
new_df = new_df.union(temp)
Я попытался увеличить максимальный размер результата до 15G, чтобы он работал. Я не уверен, почему это потребовало так много памяти. Есть ли руководство о том, как рассчитать размер набора результатов?