1、在MyEclipse或Eclipse里出现中文乱码问题该如何解决呢?
例如下面的问题:
如果是这样情况,说明是要改编码。
解决的办法?
1 、windows -> preferences
2、 将Text file encoding的other部分,改为UTF-8。
3、hadoop项目,右键,prpperties,然后出现以下界面。就是配置好了,即hadoop项目的消除中文乱码问题解决。
将Inherited from container(UTF-8)的Other改为UTF-8。
4、刷新,重新即可。将之前的salary.txt重新上传。
OK,这样本地乱码问题就得到了解决。
2、MapReduce 框架的容错性分析
MapReduce 最大的特点之一就是有很好的容错性,即使你的节点挂掉了1个、2个、3个,都是没有问题的, 它都可以照常来运行,把你的作业或者应用程序运行完成。不会出现某个节点挂了,你的作业就运行失败这种情况。 那么MapReduce 到底是通过什么样的机制,使它具有这么好的容错性呢?下面我们依次来介绍一下。
1、JobTracker
很不幸,JobTracker 存在单点故障,一旦出现故障,整个集群就不可用。这个是1.0里面出现的问题,在2.0里面这个问题已经得到了解决。 不过大家放心,即使在1.0中,MapReduce也不会经常出现故障。它可能一年也就是出现几次故障,出现故障之后,你重启一下,再把作业重新提交就可以了,它不会像HDFS那样出现数据的丢失。 因为 MapReduce 是一个计算框架,计算过程是可以重现的,即使某个服务挂掉了,你重启一下服务,然后把作业重新提交,也是不会影响你的业务的。
2、TaskTracker
TaskTracker周期性的向JobTracker汇报心跳,如果一定的时间内没有汇报这个心跳,JobTracker 就认为该TaskTracker 挂掉了,它就会把上面所有任务调度到其它TaskTracker(节点)上运行。这样即使某个节点挂了,也不会影响整个集群的运行。
3、MapTask和ReduceTask
MapTask和ReduceTask 也可能运行挂掉。比如内存超出了或者磁盘挂掉了,这个任务也就挂掉了。 这个时候 TaskTracker 就会把每个MapTask和ReduceTask的运行状态回报给 JobTracker,JobTracker 一旦发现某个Task挂掉了,它就会通过调度器把该Task调度到其它节点上。这样的话,即使任务挂掉了,也不会影响应用程序的运行。
3、在搭建eclipse/Myeclipse过程中出现下面问题该如何解决?
例如下面的问题:
解决方法:
点击Window——Open Perspective——Other...
然后在弹出的对话框里选择Map/Reduce,点击OK即可。