2016-05-12 9 views
1

私はhadoop 2.5.2を使用しています。私はhadoopとmap reduceを初めて使用しています。感情分析を行うためにmap reduceコードを試してみました。しかし、私がコードを実行すると、コンソール上にhadoopによってたくさんのログメッセージが生成されます。それぞれの文の解析結果を与えるのに時間がかかる理由があります。私は同様の質問を参照しているコンソールでhadoopによって生成されたログメッセージを抑制する方法

2016-05-12 23:03:05,396 INFO jvm.JvmMetrics (JvmMetrics.java:init(71)) - Cannot initialize JVM Metrics with processName=JobTracker, sessionId= - already initialized 
2016-05-12 23:03:05,397 INFO jvm.JvmMetrics (JvmMetrics.java:init(71)) - Cannot initialize JVM Metrics with processName=JobTracker, sessionId= - already initialized 
2016-05-12 23:03:05,400 WARN mapreduce.JobSubmitter (JobSubmitter.java:copyAndConfigureFiles(150)) - Hadoop command-line option parsing not performed. Implement the Tool interface and execute your application with ToolRunner to remedy this. 
2016-05-12 23:03:05,403 WARN mapreduce.JobSubmitter (JobSubmitter.java:copyAndConfigureFiles(259)) - No job jar file set. User classes may not be found. See Job or Job#setJar(String). 
2016-05-12 23:03:05,412 INFO mapred.FileInputFormat (FileInputFormat.java:listStatus(247)) - Total input paths to process : 3 
2016-05-12 23:03:05,421 INFO mapreduce.JobSubmitter (JobSubmitter.java:submitJobInternal(396)) - number of splits:3 
2016-05-12 23:03:05,430 INFO mapreduce.JobSubmitter (JobSubmitter.java:printTokens(479)) - Submitting tokens for job: job_local1427897879_0120 
2016-05-12 23:03:05,444 WARN conf.Configuration (Configuration.java:loadProperty(2368)) - file:/home/hduser/workspace/Test1/build/test/mapred/staging/hduser1427897879/.staging/job_local1427897879_0120/job.xml:an attempt to override final parameter: mapreduce.job.end-notification.max.retry.interval; Ignoring. 
2016-05-12 23:03:05,445 WARN conf.Configuration (Configuration.java:loadProperty(2368)) - file:/home/hduser/workspace/Test1/build/test/mapred/staging/hduser1427897879/.staging/job_local1427897879_0120/job.xml:an attempt to override final parameter: hadoop.tmp.dir; Ignoring. 
2016-05-12 23:03:05,445 WARN conf.Configuration (Configuration.java:loadProperty(2368)) - file:/home/hduser/workspace/Test1/build/test/mapred/staging/hduser1427897879/.staging/job_local1427897879_0120/job.xml:an attempt to override final parameter: mapreduce.job.end-notification.max.attempts; Ignoring. 
2016-05-12 23:03:05,482 WARN conf.Configuration (Configuration.java:loadProperty(2368)) - file:/home/hduser/workspace/Test1/build/test/mapred/local/localRunner/hduser/job_local1427897879_0120/job_local1427897879_0120.xml:an attempt to override final parameter: mapreduce.job.end-notification.max.retry.interval; Ignoring. 
2016-05-12 23:03:05,482 WARN conf.Configuration (Configuration.java:loadProperty(2368)) - file:/home/hduser/workspace/Test1/build/test/mapred/local/localRunner/hduser/job_local1427897879_0120/job_local1427897879_0120.xml:an attempt to override final parameter: hadoop.tmp.dir; Ignoring. 
2016-05-12 23:03:05,483 WARN conf.Configuration (Configuration.java:loadProperty(2368)) - file:/home/hduser/workspace/Test1/build/test/mapred/local/localRunner/hduser/job_local1427897879_0120/job_local1427897879_0120.xml:an attempt to override final parameter: mapreduce.job.end-notification.max.attempts; Ignoring. 
2016-05-12 23:03:05,483 INFO mapreduce.Job (Job.java:submit(1289)) - The url to track the job: http://localhost:8080/ 
2016-05-12 23:03:05,483 INFO mapreduce.Job (Job.java:monitorAndPrintJob(1334)) - Running job: job_local1427897879_0120 
2016-05-12 23:03:05,483 INFO mapred.LocalJobRunner (LocalJobRunner.java:createOutputCommitter(471)) - OutputCommitter set in config null 
2016-05-12 23:03:05,484 INFO mapred.LocalJobRunner (LocalJobRunner.java:createOutputCommitter(489)) - OutputCommitter is org.apache.hadoop.mapred.FileOutputCommitter 
2016-05-12 23:03:05,485 INFO mapred.LocalJobRunner (LocalJobRunner.java:runTasks(448)) - Waiting for map tasks 
2016-05-12 23:03:05,485 INFO mapred.LocalJobRunner (LocalJobRunner.java:run(224)) - Starting task: attempt_local1427897879_0120_m_000000_0 
2016-05-12 23:03:05,486 INFO mapred.Task (Task.java:initialize(587)) - Using ResourceCalculatorProcessTree : [ ] 
2016-05-12 23:03:05,486 INFO mapred.MapTask (MapTask.java:updateJobWithSplit(462)) - Processing split: file:/home/hduser/workspace/Test1/training/pool.txt:0+17961 
2016-05-12 23:03:05,487 INFO mapred.MapTask (MapTask.java:runOldMapper(416)) - numReduceTasks: 1 
2016-05-12 23:03:05,487 INFO mapred.MapTask (MapTask.java:createSortingCollector(388)) - Map output collector class = org.apache.hadoop.mapred.MapTask$MapOutputBuffer 
2016-05-12 23:03:05,513 INFO mapred.MapTask (MapTask.java:setEquator(1182)) - (EQUATOR) 0 kvi 26214396(104857584) 
2016-05-12 23:03:05,513 INFO mapred.MapTask (MapTask.java:init(975)) - mapreduce.task.io.sort.mb: 100 
2016-05-12 23:03:05,514 INFO mapred.MapTask (MapTask.java:init(976)) - soft limit at 83886080 
2016-05-12 23:03:05,514 INFO mapred.MapTask (MapTask.java:init(977)) - bufstart = 0; bufvoid = 104857600 
2016-05-12 23:03:05,514 INFO mapred.MapTask (MapTask.java:init(978)) - kvstart = 26214396; length = 6553600 
2016-05-12 23:03:05,516 INFO mapred.LocalJobRunner (LocalJobRunner.java:statusUpdate(591)) - 
2016-05-12 23:03:05,516 INFO mapred.MapTask (MapTask.java:flush(1437)) - Starting flush of map output 
2016-05-12 23:03:05,516 INFO mapred.MapTask (MapTask.java:flush(1455)) - Spilling map output 
2016-05-12 23:03:05,516 INFO mapred.MapTask (MapTask.java:flush(1456)) - bufstart = 0; bufend = 17961; bufvoid = 104857600 
2016-05-12 23:03:05,516 INFO mapred.MapTask (MapTask.java:flush(1458)) - kvstart = 26214396(104857584); kvend = 26211024(104844096); length = 3373/6553600 
2016-05-12 23:03:05,523 INFO mapred.MapTask (MapTask.java:sortAndSpill(1641)) - Finished spill 0 
2016-05-12 23:03:05,524 INFO mapred.Task (Task.java:done(1001)) - Task:attempt_local1427897879_0120_m_000000_0 is done. And is in the process of committing 
2016-05-12 23:03:05,525 INFO mapred.LocalJobRunner (LocalJobRunner.java:statusUpdate(591)) - file:/home/hduser/workspace/Test1/training/pool.txt:0+17961 
2016-05-12 23:03:05,525 INFO mapred.Task (Task.java:sendDone(1121)) - Task 'attempt_local1427897879_0120_m_000000_0' done. 
2016-05-12 23:03:05,525 INFO mapred.LocalJobRunner (LocalJobRunner.java:run(249)) - Finishing task: attempt_local1427897879_0120_m_000000_0 
2016-05-12 23:03:05,525 INFO mapred.LocalJobRunner (LocalJobRunner.java:run(224)) - Starting task: attempt_local1427897879_0120_m_000001_0 
2016-05-12 23:03:05,525 INFO mapred.Task (Task.java:initialize(587)) - Using ResourceCalculatorProcessTree : [ ] 
2016-05-12 23:03:05,526 INFO mapred.MapTask (MapTask.java:updateJobWithSplit(462)) - Processing split: file:/home/hduser/workspace/Test1/training/pool.txt~:0+17939 
2016-05-12 23:03:05,526 INFO mapred.MapTask (MapTask.java:runOldMapper(416)) - numReduceTasks: 1 
2016-05-12 23:03:05,527 INFO mapred.MapTask (MapTask.java:createSortingCollector(388)) - Map output collector class = org.apache.hadoop.mapred.MapTask$MapOutputBuffer 
2016-05-12 23:03:05,550 INFO mapred.MapTask (MapTask.java:setEquator(1182)) - (EQUATOR) 0 kvi 26214396(104857584) 
2016-05-12 23:03:05,550 INFO mapred.MapTask (MapTask.java:init(975)) - mapreduce.task.io.sort.mb: 100 
2016-05-12 23:03:05,550 INFO mapred.MapTask (MapTask.java:init(976)) - soft limit at 83886080 
2016-05-12 23:03:05,550 INFO mapred.MapTask (MapTask.java:init(977)) - bufstart = 0; bufvoid = 104857600 
2016-05-12 23:03:05,550 INFO mapred.MapTask (MapTask.java:init(978)) - kvstart = 26214396; length = 6553600 
2016-05-12 23:03:05,552 INFO mapred.LocalJobRunner (LocalJobRunner.java:statusUpdate(591)) - 

ロギングメッセージは....すでにstackoverflowの[how to suppress Hadoop logging message on the consoleに尋ねたが、それはhasnt私を助けてくれniether明確な答えが議論されています。私は、次のいくつかのフォーラムで提案した構成が、そのないworking.Iを使用してみました

..私はまた、次の値を設定することで、log4j.propertiesファイルを編集しようとしているhadoop-env.sh

export HADOOP_HOME_WARN_SUPPRESS=1 
export HADOOP_ROOT_LOGGER="WARN,DRFA" 

で次の設定を試してみました

hadoop.root.logger=WARN,DRFA 
hadoop.log.dir=. 
hadoop.log.file=hadoop.log 

しかし、私は実行時の実行中にhadoop mapreduceによって生成されたこのログメッセージを取り除くことができません。コンソール上で私の出力も遅れています。それらの回避策やjavaコードを私に埋め込むことができます。コードとメッセージを抑制してください。何か提案、助け...誰も知っている??

ありがとうございます!

答えて

0

解決策が見つかりました。必要なのはmapreduceの設定ファイルを変更することです。

1.mapreduce.map.log.levelは、OFF、FATAL、ERROR、WARN、INFO、DEBUG、TRACE、ALLの値をとることができます。 "mapreduce.job.log4j-properties-file"が設定されていると、設定を上書きすることができます。

  1. mapreduce.reduce.log.levelは、OFF、FATAL、ERROR、WARN、INFO、DEBUG、TRACE、ALLの値も取ることができます。 "mapreduce.job.log4j-properties-file"が設定されている場合は、設定を上書きすることができます。そのため、 "mapreduce.job.log4j-properties-file"が設定されていないことを確認することをお勧めします。

mapred-site.xmlで次のプロパティを設定する必要があります。ログ・メッセージが表示されていないとして、MapReduceのコードを実行しながら、それが発生した場合、我々はすべてのエラーを把握カントとして

<property> 
<name>mapreduce.map.log.level</name> 
<value>OFF</value> 
</property> 


<property> 
<name>mapreduce.reduce.log.level</name> 
<value>OFF</value> 
</property> 

今私は、それはまた、欠点がconsole.Butにはログメッセージを見ることはできません。

関連する問題