Hadoop学习常见问题及答案整理(三)

本文介绍了解决MyEclipse或Eclipse中中文乱码的方法,并详细解析了MapReduce框架的容错机制,包括JobTracker、TaskTracker及MapTask和ReduceTask的故障处理方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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即可。


相关阅读:

Hadoop学习常见问题及答案整理(一)

Hadoop学习常见问题及答案整理(二)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值