大家好,我是曜耀。
今天我来讲一讲,hadoop的全家桶:hive,sqoop,HBase,hdfs,yarn,spark。大部分就这些,不过对于我专业大数据来说,其中就hive,sqoop,hdfs这几个用到的是非常多。对此,我就专门以自己的专业来介绍这几个。
首先是hdfs分布式文件系统,他有的组件有:
namenode:存储文件的元数据,接收来自客户端的读写请求
datanode:存储文件数据
secondarynamenode:第二名字节点,定期的检查并且合并FSImage系统快照,editlog编辑日志
这是hdfs的基本对于大数据专业的我来用着是真的舒服啊。对此同一专业的道友懂得都懂。
其中我觉得需要了解是hdfs的容错机制:
本机制和心跳机制
副本机制:每一个数据块都有相应数量的副本
心跳机制:DataNode会发送一个数据包给namenode,namenode接受到这个数据包之后,认为DataNode是正常的,如果接受不到这个心跳包,会认为DataNode挂掉了,namenode就会去找相应的副本,secondarynamenode就会合并最新的系统快照和编辑日志,放在一个新的节点上。
我个人觉得这是非常优秀的,因为这个一避免你的文件的丢失措施,对于我们来说是非常的有好的。
其中对于我们大数据来说最重要的是数据清洗,不得不说一下数据清洗的必须品就是mapreduce,
1.MapReduce执行流程 WordCount
2.Partitioner 和combinner
partitioner 是分组,将要清洗的数据按照key来对其进行分组,相同key的放在同一个输出文件中
combiner 是在进入reduce之前,先行合并一次,提高计算效率
我个人觉得这是我们大数据专业吃饭的家伙。因为我们大数据专业主要的就是对数据的清洗和收集,就没什么其他的了。不过除了个别的一些跟深入的技术,对此我只能说,我是小白,在坐的勿喷。还有大佬也勿喷。狗头保命。
接下来就讲一讲yarn的组件,yarn的组件主要是对资源的管理,使得各个组件能够在有效的资源下可以把任务进程运行下去。
esourceManager 资源管理器,负责给各个节点分配计算和存储资源以及响应各个节点的计算请求
nodeManager 节点管理器 负责管理各个节点的container,以及开启map task 和reduce task
最后说一下flume的组件,他的组件主要是对数据的传输通道来进行维护的,使得数据在传输的过程中得以保全数据的完整性。
source 负责从源数据接收event 或者自己产生event,传递到下一层
channel 负责将event传递到sink,将数据缓存在管道中,保证数据的传输速率恒定
sink 负责将event传递到目的端,并且将event从channel中移除
接下来就讲一讲hive,有的朋友可能对hive很陌生,但是我肯定你们对数据库一定熟悉。没错hive就是与数据库一样就是用来储存数据的,不过与数据库有一些微小的差别,一个是可以对单个数据进行操作,另一个是不能,不能对单条数据操作的是hive。具体在这就不用详细的进行讲解。
以上就是一个大数据专业初级水平对hadoop全家桶的讲解,对此有讲的不是有很全面的,望个位谅解。
我是曜耀,我们下次见。