Я использую pyspark-2.4.0, и большая работа продолжает зависать со следующим сообщением об ошибке (при сохранении в паркет или при попытке собрать результат):
py4j.protocol.Py4JJavaError: Произошла ошибка при вызове o2495.collectToPython.: org.apache.spark.SparkException: задание прервано из-за сбоя этапа: задание 184 на этапе 290.0 не выполнено 4 раза, последний сбой: потерянное задание 184.3 на этапе 290.0 (TID 17345, 53.62.154.250, исполнитель 5): org.xerialИсключениеИскры.209) в org.apache.spark.storage.BlockManager $$ anonfun $ getRemoteValues $ 1.apply (BlockManager.scala: 698) в org.apache.spark.storage.BlockManager $$ anonfun $ getRemoteValues $ 1.apply (BlockManager.scala:696) по адресу scala.Option.map (Option.scala: 146) по адресу org.apache.spark.storage.BlockManager.getRemoteValues (BlockManager.scala: 696) в org.apache.spark.storage.BlockManager.get (BlockManager.scala: 820) в org.apache.spark.storage.BlockManager.getOrElseUpdate (BlockManager.scala: 875) в org.apache.spark.rdd.RDD.getOrCompute (RDD.scala: 335) в org.apache.spark.rdd.RDD.iterator (RDD.scala: 286) в org.apache.spark.rdd.MapPartitionsRDD.compute (MapPartitionsRDD.scala: 52) в org.apache.spark.rdd.RDD.computeOrReadCheckpoint (RDD.scala: 324) в org.apache.spark.rdd.RDD.iterator (RDD.scala: 288) в org.apache.spark.rdd.MapPartitionsRDD.compute (MapPartitionsRDD.scala: 52) в org.apache.spark.rdd.RDD.computeOrReadCheckpoint (RDD.scala: 324) в org.apache.spark.rdd.RDD.iterator (RDD.scala: 288) в org.apache.spark.rdd.MapPartitionsRDD.compute (MapPartitionsRDD.scala: 52) в org.apache.spark.rdd.RDD.computeOrReadCheckpoint (RDD.scala: 324) в org.apache.spark.rdd.RDD.iterator (RDD..scala: 288) в org.apache.spark.rdd.MapPartitionsRDD.compute (MapPartitionsRDD.scala: 52) в org.apache.spark.rdd.RDD.computeOrReadCheckуказать (RDD.scala: 324) на org.apache.spark.rdd.RDD.iterator (RDD.scala: 288) на org.apache.spark.rdd.MapPartitionsRDD.compute (MapPartitionsRDD.scala: 52) на org.apache.spark.rdd.RDD.computeOrReadCheckpoint (RDD.scala: 324) в org.apache.spark.rdd.RDD.iterator (RDD.scala: 288) в org.apache.spark.rdd.MapPartitionsRDD.compute (MapPartitionsRDala.: 52) в org.apache.spark.rdd.RDD.computeOrReadCheckpoint (RDD.scala: 324) в org.apache.spark.rdd.RDD.iterator (RDD.scala: 288) в org.apache.spark.rdd.MapPartitionsRDD.compute (MapPartitionsRDD.scala: 52) в org.apache.spark.rdd.RDD.computeOrReadCheckpoint (RDD.scala: 324) в org.apache.spark.rdd.RDD.iterator (RDD.scala: 288) в org.apache.spark..scala: 121) at org.apache.spark.executor.Executor $ TaskRunner $$ anonfun $ 10.apply (Executor.scala: 402) в org.apache.spark.util.Utils $ .tryWithSafeFinally (Utils.scala: 1360) в org.apache.spark.executor.Executor $ TaskRunner.run (Executor.scala: 408) в java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1149) в java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:624) в java.lang.Thread.run (Thread.java:748)
Моя проблема в том, что я не знаю, какая операция вызывает проблему.Сообщение об ошибке не дает никаких указаний по этому поводу, и трассировка стека не содержит никакого моего пользовательского кода.
Есть идеи, что может вызвать это, или как я могу найти, где именно работа продолжает терпеть неудачу?