Я читаю большой txt файл, который содержит 15 столбцов и 2 300 000 000 строк, я делаю следующие вещи с фреймом данных pyspark:
- Присоединяюсь к новому столбцу из другого pyspark datframe
- Я применяю UDF к 3 столбцам
- Поместить формат в столбцы (IntegerType () и LongType ())
- Записать фрейм данных pyspark как parquet file
Я выполнил команду для записи фрейма данных, и через 17 часов я получил следующую ошибку:
Caused by: org.apache.spark.SparkException: Job aborted due to stage failure: Task 19 in stage 17.0 failed 4 times, most recent failure: Lost task 19.3 in stage 17.0 (TID 87, 10.175.252.55, executor 6): ExecutorLostFailure (executor 6 exited caused by one of the running tasks) Reason: worker lost
Вот как я читаю фрейм данных:
df = sqlContext.read.csv("file.txt", header=True)
И вот как я пишу паркет:
df.write.option("compression", "gzip").parquet( "file.parquet" )
Я попробовал тот же код с файлом, который имеет 270 столбцов и 400 000 000 строк и отлично работает