hadoop-hdfs-Zookeeper-hive-hbase
1、MapRedece从读取数据开始到将最终结果写入HDFS经过哪些步骤? 第一步:inputformat进行数据读读取,将数据发送给split 第二步:split 将数据进行切分,发送给RecordReader 第三步:RR将数据按照行再次切分,将切分好的数据组装成key(行首偏移量),value(每行的数据) 发送给map 第四步:map 进行自定义逻辑的书写,将数据传给Shuffle 第五步:Shuffle中的Partition 将数据key的哈希值与ReduceTask数量取余,余几就分到哪个区 第六步:Shuffle中的Sort 将数据按照一定规则进行排序 第七步:Shuffle中的Combine 将数据在map端先进行局部聚合,这样做的好处数节省了网络带宽的消耗,效率更高 第八步:Shuffle中的Group 将数据相同的key变成一个key,将这个key的Value拼装成一个Value的list 第九步:Reduce 进行自定义计算逻辑的书写,将结果发送给OutputFormat 第十步:OutPutFormat 将结果数据输出保存到HDFS上 2、Hadoop 的组成部分有哪些模块? HDFS 分布式文件存储系统 管理者:NameNode 工作者:DataNode 辅助者:SecondayNameNode MapReduce 分布式离线计算框架 Yarn