加入收藏 | 设为首页 | 会员中心 | 我要投稿 | RSS
您当前的位置:首页 > 教程文章 > NOSQL数据库

整理Hadoop中容易混淆的概念

时间:2012-05-01 12:23:05  来源:  作者:

Q1.列举出hadoop中定义的最常用的InputFormats。哪个是默认的?
Ans: hadoop中定义的最常见的InputFormats有TextInputFormat,KeyValueInputFormat,SequenceFileInputFormat。默认的InputFormats是TextInputFormats。

Q2. TextInputFormat和KeyValueInputFormat类之间的不同之处在于哪里?
Ans: TextInputFormat读取文本文件中的所有行,提供了行的偏移作为Mapper的键,实际的行作为mapper的值。
KeyValueInputFormat读取文本文件,解析所有行到中,首个空格前的字符是mapper的key,行的其余部分则是mapper的值。

Q3. hadoop中的InputSplit是什么?
Ans: 当一个hadoop job 运行时,它将输入文件拆分成块,分配每个块给各个mapper处理。这称为Input Split。

Q4. hadoop框架中文件拆分是如何被触发的?
Ans: 通过运行输入格式类中的getInputSplit()方法。

Q5. 考虑一种情况:Map/Reduce系统中,HDFS块大小事64MB,输入格式FileInputFormat,有三个文件64K,65MB,127MB,那么有hadoop框架会将输入划分成多少?
Ans:hadoop将会做5个拆分,64K文件拆分1个,65MB文件拆分2个,127MB文件拆分2个。

Q6. hadoop中的RecordReader的目的是什么?
Ans: InputSplit已经定义了部分工作,但没有描述如何访问它。RecordReader类实际从它的源加载数据,并转换成适合Mapper读取。RecordReader示例由InputFormat定义。

Q9. 如果hadoop中没有定义定制分区,那么如何在输出到reducer前执行数据分区?
Ans: 默认的分区器为各个键计算一个哈希值,并分配给基于这个结果的分区。

Q10. 什么是Combiner?
Ans: Combiner是一个最小删减的过程,处理由mapper产生的数据。Combiner将会接收某个节点上由mapper实例发送的所有数据。Combiner的输出被送到Reducer,代替Mapper的输出。

来顶一下
返回首页
返回首页
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
推荐资讯
在CentOS下搭建Android 开发环境
在CentOS下搭建Androi
轻松搭建属于自己的Ubuntu发行版
轻松搭建属于自己的Ub
利用SUSE Studio 打造自己的个性化Linux发行版
利用SUSE Studio 打造
那些采用PHP技术的IT大企业
那些采用PHP技术的IT大
相关文章
    无相关信息
栏目更新
栏目热门