2017-07-18 8 views
1

シンプルに実行中のHiveでは以下の例外が発生しますSELECT COUNT(*) FROM Table。 org.apache.hadoop.hiveから実行エラー、リターンコード1:FAILED:実行エラー。org.apache.hadoop.hive.ql.exec.mr.MapRedTaskからコード1を返します。そのようなファイルやディレクトリがありません

ジョブ送信は例外 'org.apache.hadoop.io.nativeio.NativeIOException(そのようなファイルやディレクトリ )' FAILEDで失敗しました.ql.exec.mr.MapRedTask。そのようなファイルまたは ディレクトリ

単純なSELECT * FROM Tableでは問題は発生しません。
問題の可能性がある場所をお勧めします。ハイブ実行エンジンはMRです。エラーの

のフルスタックトレース:

2017-07-18T07:18:52744 ERRORは、[メイン]:exec.Taskは(:()) - ジョブ送信 は「例外 で失敗しましたorg.apache .hadoop.io.nativeio.NativeIOException(そのようなファイルまたは ディレクトリはありません) 'ENOENT:そのようなファイルやディレクトリはありません。 org.apache.hadoop.io.nativeio.NativeIO $ POSIX.chmodImpl(ネイティブメソッド) at org。 .pacission(RawLocalFileSystem。)。 Javaの:729) でorg.apache.hadoop.fs.ChecksumFileSystem $ 1.apply(ChecksumFileSystem.java:505) でorg.apache.hadoop.fs.ChecksumFileSystem $ FsOperation.run(ChecksumFileSystem.java:486) org.apache.hadoop.fs.ChecksumFileSystem.setPermission(ChecksumFileSystem.java:502) at org.apache.hadoop.fs.FileSystem.mkdirs(FileSystem.java:602) org.apache.hadoop.mapreduce。 : org.apache.hadoop.mapreduce.JobSubmitter.copyAndConfigureFiles(JobSubmitter.java:95) でorg.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.javaでJobResourceUploader.uploadFiles(JobResourceUploader.java:94) 190) at org.apache.hadoop.mapreduce.Job $ 10.run(Job.java:1290)at org.apache.hadoop.mapreduce.Job $ 10.run(Job.java:1287)at java.security.AccessController。 doPrivileged(ネイティブメソッド)at javax.security.auth.Subject.doAs(Subject.java:415)at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1698) at org.apache.hadoop .mapreduce.Job.submit(Job.java:1287)at org.apache.hadoop.mapred.JobClient $ 1.run(JobClient.java:575)at org.apache.hadoop.mapred.JobClient $ 1.run(JobClient .java:570)at java.security.AccessController.doPrivileged(ネイティブメソッド) at javax.security.auth.Subject.doAs(Subject.java:415)at org.apache.hadoop.security.UserGroupInfor mation.doAs(UserGroupInformation.java:1698) at org.apache.hadoop.mapred.JobClient.submitJobInternal(JobClient.java:570) at org.apache.hadoop.mapred.JobClient.submitJob(JobClient.java:561) ) at org.apache.hadoop.hive.ql.exec.mr.ExecDriver.execute(ExecDriver.java:433) at org.apache.hadoop.hive.ql.exec.mr.MapRedTask.execute(MapRedTask .java:138) at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:197)at org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner。java:100) at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1858)at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1562)at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1313)at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1084)at org.apache.hadoop。 hive.ql.Driver.run(Driver.java:1072)at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:232) at org.apache.hadoop.hive.cli.CliDriver org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriverで.processCmd(CliDriver.java:183) でorg.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:399) .java:776) at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:714) org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:641)at sun.reflect。 NativeMethodAccessorImpl.invoke0 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)java.lang.reflect.Methodオブジェクトで でsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)での(ネイティブメソッド) 。 org.apache.hadoop.util.RunJar.main(RunJar.java:136)で org.apache.hadoop.util.RunJar.run(RunJar.java:221)で呼び出す(Method.java:606)

2017-07-18T07:18:52,745エラー[メイン]:ql.Driver(:()) - FAILE D: 実行エラー、戻りコード1を org.apache.hadoop.hive.ql.exec.mr.MapRedTaskから返します。そのようなファイルはありません。 ディレクトリ

+0

あなたのマップタスクは何ですか、あなたのクラスタに割り当てられたタスクメモリを減らしますか? – TKHN

+0

集計を実行しようとすると、MapReduceコードをハイブで実行します。単純な 'select * from table'はMapReduceを実行しません。 MapReduceを実行している間、クラスターに構成上の問題があることは、クラスターであることは明らかです。あなたの設定を共有していただけますか? –

答えて

1

hadoop tmpディレクトリのアクセス許可を確認してみてください。このディレクトリへのパスは、たとえばcore-site.xmlに設定されています。プロパティ名はhadoop.tmp.dirです。 私はあなたが説明したものと同様の問題を抱えていました。これは、MRジョブが実行されていたユーザーが、その場所への書き込み権限を持っていないために発生しました。

関連する問題