TLの作成に失敗しました。DRスパークCSVにIOException Mkdirsはファイル
スパーク1.6.1は、IOExceptionがMkdirsでいないHDFSとスタンドアロンクラスタ上でスパークCSV 1.4を使用してCSVファイルの書き込みに失敗したファイル
の作成に失敗しました。詳細:
私はScalaを使って、ローカルファイルシステム(実行中のマシンにはHDFSをインストールしていない)を使用して、スタンドアロンクラスタ上でSpark 1.6.1アプリケーションを実行しています。私はHiveContextを使ってCSVファイルとして保存しようとしているこのデータフレームを持っています。
これは私が実行しているものです:私が使用している
exportData.write
.mode(SaveMode.Overwrite)
.format("com.databricks.spark.csv")
.option("delimiter", ",")
.save("/some/path/here") // no hdfs:/ or file:/ prefix in the path
スパークCSVは1.4です。このコードを実行する場合 私は次の例外を取得:
WARN TaskSetManager:70 - Lost task 4.3 in stage 10.0: java.io.IOException: Mkdirs failed to create file: /some/path/here/_temporary/0
はフルスタックトレースは次のとおりです。
at org.apache.hadoop.fs.ChecksumFileSystem.create(ChecksumFileSystem.java:442)
at org.apache.hadoop.fs.ChecksumFileSystem.create(ChecksumFileSystem.java:428)
at org.apache.hadoop.fs.FileSystem.create(FileSystem.java:908)
at org.apache.hadoop.fs.FileSystem.create(FileSystem.java:801)
at org.apache.hadoop.mapred.TextOutputFormat.getRecordWriter(TextOutputFormat.java:123)
at org.apache.spark.SparkHadoopWriter.open(SparkHadoopWriter.scala:91)
at org.apache.spark.rdd.PairRDDFunctions$$anonfun$saveAsHadoopDataset$1$$anonfun$13.apply(PairRDDFunctions.scala:1193)
at org.apache.spark.rdd.PairRDDFunctions$$anonfun$saveAsHadoopDataset$1$$anonfun$13.apply(PairRDDFunctions.scala:1185)
at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:66)
at org.apache.spark.scheduler.Task.run(Task.scala:89)
at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:214)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
出力ディレクトリが作成されますが、その空を取得ありません。
私はスパークシェルを使って実行しようとしましたが、ダミーのデータフレームを作成して、同じパスを使用して同じコードを保存して保存します。それは成功した。
スパークジョブ
を実行しているとき、私はそれが提案グーグルで私が書いているフォルダのアクセス許可をチェックし、777にそれを変更しますが、基本的には、それはまだ動作しません:
- を変更とにかく持っていないhdfs:/を削除してファイル接頭辞を付けてください。また、file:/、file://、file:///プレフィックスを追加してみました。
- 許可の問題 - 私はこの問題を解決するためにフォルダ777を作成しました。
- 私がUbuntuで作業しているので、
- セキュリティ問題 - 私のstacktraceを調べると、私はセキュリティの失敗を見つけることができませんでした。
- 私のファイルパスの先頭に/プレフィックスを削除する - 私はこの問題に
に関する運
上記の問題をどのように修正したか説明してください。自分自身が同じ問題を抱えている – developer