簡體   English   中英

Hadoop 2.2.0配置棄用

[英]Hadoop 2.2.0 Configuration deprecation

我設置了Hadoop 2.2.0集群,現在運行我的java客戶端來處理數據。 運行我的java程序后,我注意到輸出顯示如下:

13/11/18 11:44:44 INFO Configuration.deprecation: user.name is deprecated. Instead, use mapreduce.job.user.name
13/11/18 11:44:44 INFO Configuration.deprecation: mapred.jar is deprecated. Instead, use mapreduce.job.jar 
13/11/18 11:44:44 INFO Configuration.deprecation: mapred.output.value.class is deprecated. Instead, use mapreduce.job.output.value.class
13/11/18 11:44:44 INFO Configuration.deprecation: mapreduce.combine.class is deprecated. Instead, use mapreduce.job.combine.class
13/11/18 11:44:44 INFO Configuration.deprecation: mapreduce.map.class is deprecated. Instead, use mapreduce.job.map.class
13/11/18 11:44:44 INFO Configuration.deprecation: mapred.job.name is deprecated. Instead, use mapreduce.job.name
13/11/18 11:44:44 INFO Configuration.deprecation: mapred.textoutputformat.separator is deprecated. Instead, use mapreduce.output.textoutputformat.separator
13/11/18 11:44:44 INFO Configuration.deprecation: mapreduce.reduce.class is deprecated. Instead, use mapreduce.job.reduce.class 
13/11/18 11:44:44 INFO Configuration.deprecation: mapred.input.dir is deprecated. Instead, use mapreduce.input.fileinputformat.inputdir
13/11/18 11:44:44 INFO Configuration.deprecation: mapred.output.dir is deprecated. Instead, use mapreduce.output.fileoutputformat.outputdir
13/11/18 11:44:44 INFO Configuration.deprecation: mapred.map.tasks is deprecated. Instead, use mapreduce.job.maps
13/11/18 11:44:44 INFO Configuration.deprecation: mapred.output.key.class is deprecated. Instead, use mapreduce.job.output.key.class
13/11/18 11:44:44 INFO Configuration.deprecation: mapred.working.dir is deprecated. Instead, use mapreduce.job.working.dir

該模塊運行良好,看起來不會影響任何事情。 但是我該如何避免這些信息消息呢? (我導入maven hadoop-client 2.2.0並使用Job job = new Job())

它已在Hadoop 2.3中修復,請參考: https//issues.apache.org/jira/browse/HADOOP-10178

大多數是因為Hadoop API更改 - 所有“mapred”包都被移動到“mapreduce”。 您可以更改將“org.apache.hadoop.mapred”導入“org.apache.hadoop.mapreduce”的位置以避免此類信息。 您可以對其他一些消息進行類似的更改,例如

13/11/18 11:44:44 INFO Configuration.deprecation: user.name is deprecated. Instead, use mapreduce.job.user.name

不推薦使用意味着這些API仍然存在但在將來的版本中將被刪除。 mapred命名空間是舊的,並且添加了新的mapreduce命名空間來替換它。

正如信息消息和Zhutoulala所提到的,如果你想避免這些,你需要使用新API而不是舊API。 新的API是org.apache.hadoop.mapreduce 順便說一句,自2009年以來,“新”API就在那里。您可以看到此演示文稿的變化

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM