2017-09-26 29 views
-1

すべての処理が完了した後、ファイルをs3に書き込もうとすると、奇妙なエラーが発生します。 私はメモリの割り当てがこれと何か関係があるかどうか疑問に思っています。 ご意見をお寄せください。 Spark 2.1.0をスタンドアロンモードで実行しています。次のようにs3にファイルを書き込む際にエラーが発生しました - pyspark

エラーは以下のとおりです。次のように

17/09/26 15:50:27 ERROR Utils: Aborting task 
org.apache.spark.SparkException: Python worker exited unexpectedly (crashed) 
    at org.apache.spark.api.python.PythonRunner$$anon$1.read(PythonRDD.scala:230) 
    at org.apache.spark.api.python.PythonRunner$$anon$1.next(PythonRDD.scala:156) 
    at org.apache.spark.api.python.PythonRunner$$anon$1.next(PythonRDD.scala:152) 
    at org.apache.spark.InterruptibleIterator.next(InterruptibleIterator.scala:43) 
    at scala.collection.Iterator$$anon$12.nextCur(Iterator.scala:434) 

    .... 
    Caused by: java.io.EOFException 
    at java.io.DataInputStream.readFully(DataInputStream.java:197) 
    at java.io.DataInputStream.readFully(DataInputStream.java:169) 
    at org.apache.spark.api.python.PythonRunner$$anon$1.read(PythonRDD.scala:169) 
    ... 21 more 
17/09/26 15:50:28 ERROR FileFormatWriter: Job job_20170926152633_0010 aborted. 
17/09/26 15:50:28 ERROR Executor: Exception in task 270.0 in stage 10.0 (TID 6680) 
org.apache.spark.SparkException: Task failed while writing rows 
    at 

org.apache.spark.sql.execution.datasources.FileFormatWriter 
    $.org$apache$ 
    spark$sql$execution$datasources$FileFormatWriter$ 
    $executeTask(FileFormatWriter.scala:204) 
    at 


.FileFormatWriter$$anonfun$write$1$$anonfun$3.\ 
apply(FileFormatWriter.scala:128) 

S3にファイルを書き込むコードは次のとおりです。

  df.write.format("parquet") \ 
      .option("x-amz-server-side-encryption", "AES256") \ 
      .mode("append") \ 
      .save(s3_path) 
+0

暗号化を使わずにs3に書き込みを試み、 'df.write.parquet(s3_path) 'のようなモードを追加できますか – maxmithun

+0

暗号化を有効にするのに役立つこのリンクを確認してください。 https://stackoverflow.com/questions/45461299/how-to-specify-server-side-encryption-for-s3-put-in-pyspark – maxmithun

答えて

0

私はそうしようとS3上のファイルを書き込むために、この最も簡単な方法を使用していますこの。このオプションが必要な場合は、.option("x-amz-server-side-encryption", "AES256")を追加してください。

 df.write.mode("append").parquet(s3_path) 

私はspark 2.0.1バージョンを使用しています。

0

私はそれを信じていません。 option("x-amz-server-side-encryption", "AES256").option()コマンドは、アップロード時にHTTPヘッダーを設定するのではなく、DF Writerタスクのプロパティを設定します。 s3コネクタ(EMRまたはApache Hadoop)のドキュメントとその設定を調べる必要があります。

同時に、私はクラッシュを引き起こすとは思わない。それはちょうど無視されます。

スタック全体をペーストします。

関連する問題