- 浏览: 47270 次
- 性别:
- 来自: 北京
最新评论
文章列表
Hadoop内存调优
- 博客分类:
- hadoop
2013-04-10
Hadoop默认情况下给每个子任务的内存大小是200M。对于实际的生产环境,这样的配置很容易捉襟见肘。为此,我们可以在mapred-site.xml中对mapred.child.java.opts属性进行设置。
以下是一个简单的例子:
<propert ...
开始
你希望遇到的情况
1. 良心爆棚的协作者。最好是大慈大悲拯救世界级别的人。
2. 你不用向对方太过的强调自己需求的重要性。
3. 问题明确、简单,瞬间解决。
你实际会遇到的情况
1. 并不关心你需求的协作者。
2. 你的需求的优先级不享受顶级待遇。
3. 问题描述不清,权责不明,多方打架踢皮球。
你拥有的资源
1. 你对问题的了解程度
- 业务流程
- 问题现象
- 问题严重程度
2. 你能求助的所有人。
3. 你能动用的所有资源。
4. 你沟通的方式。
这个是一个催化剂,要么加速问题解决,要么延缓甚至阻碍问题解决。
准备 ...
一般的思路和方法
复现问题。
可以通过查找新旧系统的差异,找到badcase。
查看历史日志,看是否可以找到异常信息。
看log
比如搜索exception、error 之类的定位问题。
思考系统最近的改动。
大胆猜测,小心求证。
向熟悉的人(高手)求助。
高手可能是对业务熟悉的人,也可能是对相关技术熟悉的人
针对系统中的黑盒部分,要格外注意。
对于经常出问题的作者所提供的黑盒要保持警惕
回忆最近的一次升级或者更新操作
大招
一步一步追查,死抠细节,不要猜测,利用二分查找的方法来快速定位出问题的地方。
...
最近在学习使用原生的mapreduce来实现对值的排序。以前使用scalding可以很容易的得到结果。现在靠自己的时候,就非常的犯难呢。参考权威指南里的方法:使用的是自定义的key来实现。
原因是hadoop只支持key上的排序。因此,我们可以自定义一种复合的key,并同时定义这个key的比较方法(重载compareTo方法)。以下是这个key的一种实现:
public class IntPair implements WritableComparable<IntPair>{
public Text first;
public Int ...