我爱编程

我的Hadoop笔记——第一讲

2016-09-30  本文已影响0人  地上最萌程序兔

第一讲🐘🐟🐢🐝

课程目标


🐰Hadoop由来

☆Doug Cutting发明的开源软件——Lucence,java为基础,为实现与Google类似的全文搜索引擎。

☆Nutch(Lucence的微缩版本) 2003-2004年,Doug以Google公开的GFS和Mapreduce思想用这两年实现了DFS和Mapreduce机制,使Nutch性能飙升。

☆2005 Nutch正式引入Apache基金会,2006年3月,Map-Reduc和Nutch Distributed File System(NDFS)被纳入名为Hadoop的项目中。

※ Hadoop这个名字其实来源于Doug儿子的玩具大象的名字🐘。

hadoop


🐰Hadoop子项目家族

Hadoop子项目家族

⭕️ Pig:轻量级语言(用户语言与MapReduce的中介,相互翻译)

⭕️ Hive:sql语言与MapReduce的转换器(翻译sql语句让MapReduce能读)

⭕️ HBase:非关系列式数据库

⭕️ Zoo Keeper:负责各节点和进程之间的通讯(通讯协调工具)

⭕️ Chukwa:数据集成工具(数据源定时抓取分析)

※每个子项目的图标都是小动物,而Zoo Keeper也是翻译成动物园管理员~


🐰Hadoop架构

都是一些后台进程

⭕️ Namenode(名称节点):

HDFS的守护程序

记录所有源数据(记录文件存放在哪个节点,在节点的哪个数据块内)

对内存和I/O进行管理

单点,一个故障整个集群崩溃。

⭕️  Secondary Namenode(辅助名称节点): 

Namenode的后备

每个集群一个

Namenode的副本,若Namenode突然崩溃Secondary Namenode替代原来的Namenode成为新的Namenode

⭕️ DataNode(数据节点):

负责把HDFS数据块读写到本地文件系统

DataNode

※ 以上三个组成HDFS分布式文件系统的体系


MapReduce里的两个后台进程

⭕️ JobTracker(作业跟踪器):

处理用户提交的代码

决定参与文件,job切割成task并分配节点去处理

监控task,重启失败的task

每个集群只有一个JobTracker

⭕️ TaskTracker(任务跟踪器)

位于slave节点上,与datanode结合

管理JobTracker分配过来的Task

每个节点只有一个RaskTracker,但它可以启动多个JVM


🐰Master与Slave

Master:Namenode、Secondary Namenode、Jobtracker

Slave:Tasktracker、Datanode


数据分析者遇到的问题(why hadoop )

我们为什么需要hadoop?

🐰hadoop的思想

把难得到的大鱼 100小鱼可以代替一个大鱼 小鱼群可随时添加减少 hadoop体系下的分析结构
上一篇 下一篇

猜你喜欢

热点阅读