执行Hadoop任务时,会输出很多东西,没法重定向,貌似是stderr,不是stdout。
以下方法:
hadoop xxxx 1>0 2>file_name[......]
之前配置Hadoop的很多步骤不太详细,配置文件的许多优化点也没太搞清楚,重新写一下。
2012.06.22更新:Hadoop版本兼容到1.0.3。
0、ssh免密码登录
ssh-keygen -t rsa -P ""
cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
echo "StrictHostKeyChecking no" >> ~/.ssh/c[......]
1、Hadoop集群的机器最好是多核、多通道硬盘,但不要使用RAID。选用中档机器。例如8核、16GB内存、4×1TB硬盘。
2、集群可随着规模而不断扩充,当小集群时(10的数量级),namenode和jobtracker可以放在同一台机器上(同时保证有一份NFS远端的namenode备份)即可。再大就最好分别放在两台机器上。
3、Windows这么不靠谱的东西就不要用于生产环境了,生产环境最好用Linux,或者Unix。
4、Hadoop的网络拓扑结构分为:机架内Rack(在[......]
GenericOptionsParser可以让你的Map/Reduce程序具有Hadoop常用的属性。
一般无需直接用GenericOptionsParser,继承Configured即可。
public class ConfigurationPrinter extends Configured implements Tool {
//添加你需要的配置文件
static {
Configuration.addDefaultResource("hdfs-default.xml[......]