hadoop学习二:hadoop基本架构与shell操作
1.hadoop1.0与hadoop2.0的区别:
hadoop1.0生态如下图:
hadoop2.0生态:
2.HDFS描述:HDFS是google的GFS的开源克隆,HDFS的架构如下图:
1) NameNode:管理HDFS的名称空间,管理数据块映射信息,配置副本策略,处理客户端读写请求。
2) StandbyNameNode:NameNode的热备,定期合并fsimage和fsedits,推送给NameNode,当Active NameNode出现故障时,快速切换为新的 Active NameNode。
3) Datanode:存储实际的数据块,执行数据块读/写。
4) Client:文件切分,与NameNode交互,获取文件位置信息,与DataNode交互,读取或者写入数据,管理HDFS,访问HDFS。
优点:高容错性;适合批处理;适合大数据处理;流式文件访问;可构建在廉价机器上。
缺点:低延迟数据访问,比如毫秒级,低延迟与高吞吐率;小文件存取,占用NameNode大量内存,寻道时间超过读取时间;并发写入、文件随机修改一个文件只能有一个写 者,仅支持append。
3.HDFS的数据形式
文件被切分成固定大小的数据块,默认数据块大小为64MB,可配置块的大小,若文件大小不到64MB,则单独存成一个block。一个文件存储方式按大小被切分成若干个block,存储到不同节点上,默认情况下每个block有三个副本。
HDFS数据写流程:
HDFS数据读流程:
4.MapReduce:是google的MapReduce的开源克隆,适合PB级以上海量数据的离线处理。
MapReduce的计算框架:
1) Map阶段:
输入数据格式解析:InputFormat,输入数据处理:Mapper,数据统计:Combiner(统计相同key值的内容),数据分组:Partitioner(计算将任务分配到Reduce任务,hash(key) mod R,R为Reduce任务数)。
2) Reduce阶段:
数据远程拷贝,数据按照key排序,数据处理:Reducer,数据输出格式:OutputFormat。
5.YARN:Hadoop 2.0新增系统,负责集群的资源管理和调度,使得多种计算框架可以运行在一个集群中,自带了多种多用户调度器,适合共享集群环境。
YARN架构:
1)ResourceManager:处理客户端请求,启动/监控ApplicationMaster,监控NodeManager,资源分配与调度。
2)NodeManager:整个集群有多个,负责单节点资源管理和使用,其功能:单个节点上的资源管理和任务管理,处理来自ResourceManager的命令,处理来自ApplicationMaster的命令。
3)ApplicationMaster:每个应用有一个,负责应用程序的管理,其功能:数据切分,为应用程序申请资源,并进一步分配给内部任务,任务监控与容错。
4)Container:对任务运行环境的抽象。描述任务运行节点资源,任务启动命令,任务运行环境。
6.HDFS的shell操作:
Hadoop的shell命令在hadoop的bin目录下,用hdfs命令可以查看HDFS文件系统中的命令,如下图:
dfsadmin:在bin目录下hadoop dfsadmin命令选项如下图:
dfs:在bin目录下hadoop dfs命令选项如下图:
fsck:检查文件属性命令,其操作如下图:
hadoop学习二:hadoop基本架构与shell操作的更多相关文章
- Hadoop开发第6期---HDFS的shell操作
一.HDFS的shell命令简介 我们都知道HDFS 是存取数据的分布式文件系统,那么对HDFS 的操作,就是文件系统的基本操作,比如文件的创建.修改.删除.修改权限等,文件夹的创建.删除.重命名等. ...
- Hadoop学习记录(2)|HDFS shell命令|体系结构
HDFS的shell 调用文件系统(FS)shell命令使用hadoop fs的形式 所有的FS shell命令使用URI路径作为参数. URI格式是scheme://authority/path.H ...
- hadoop学习之hadoop完全分布式集群安装
注:本文的主要目的是为了记录自己的学习过程,也方便与大家做交流.转载请注明来自: http://blog.csdn.net/ab198604/article/details/8250461 要想深入的 ...
- hadoop学习;hadoop伪分布搭建
先前已经做了准备工作安装jdk什么的,以下開始ssh免password登陆.这里我们用的是PieTTY工具,当然你也能够直接在linux下直接操作 ssh(secure shell),运行命令 ssh ...
- Hadoop学习之Hadoop集群搭建
1.检查网络状况 Dos命令:ping ip地址,同时,在Linux下通过命令:ifconfig可以查看ip信息2.修改虚拟机的ip地址 打开linux网络连接,在桌面右上角,然后编辑ip地址, ...
- Hadoop学习笔记——Hadoop经常使用命令
Hadoop下有一些经常使用的命令,通过这些命令能够非常方便操作Hadoop上的文件. 1.查看指定文件夹下的内容 语法: hadoop fs -ls 文件文件夹 2.打开某个已存在的文件 语法: h ...
- 大数据技术之_11_HBase学习_01_HBase 简介+HBase 安装+HBase Shell 操作+HBase 数据结构+HBase 原理
第1章 HBase 简介1.1 什么是 HBase1.2 HBase 特点1.3 HBase 架构1.3 HBase 中的角色1.3.1 HMaster1.3.2 RegionServer1.3.3 ...
- Zookeeper学习之路 (三)shell操作
Zookeeper的shell操作 Zookeeper命令工具 在启动Zookeeper服务之后,输入以下命令,连接到Zookeeper服务: [hadoop@hadoop1 ~]$ zkCli.sh ...
- 二十六、Hadoop学习笔记————Hadoop Yarn的简介复习
1. 介绍 YARN(Yet Another Resource Negotiator)是一个通用的资源管理平台,可为各类计算框架提供资源的管理和调度. 之前有提到过,Yarn主要是为了减轻Hadoop ...
随机推荐
- Tourists——圆方树
CF487E Tourists 一般图,带修求所有简单路径代价. 简单路径,不能经过同一个点两次,那么每个V-DCC出去就不能再回来了. 所以可以圆方树,然后方点维护一下V-DCC内的最小值. 那么, ...
- 【NOIP模拟赛】黑红树 期望概率dp
这是一道比较水的期望概率dp但是考场想歪了.......我们可以发现奇数一定是不能掉下来的,因为若奇数掉下来那么上一次偶数一定不会好好待着,那么我们考虑,一个点掉下来一定是有h/2-1个红(黑),h/ ...
- Vue根据URL传参来控制全局 console.log 的开关
如果你的项目中console.log了很多信息,但是发到生产环境上又不想打印这些信息,这时候就需要设置一个全局变量,如:debug, 用正则匹配一下参数: const getQueryStr = (n ...
- css的padding,border,margin的意思
下面的内边距(padding).边框(border) .外边距(margin)的意思是我自己的理解. 代码如下: <!DOCTYPE html> <html lang="e ...
- React 使用 fetch 请求天气
中国天气网(http://www.weather.com.cn)提供了查询天气的 API,通过传入城市 id, 可以获得当前城市的天气信息,API 相关信息如下: 规格 描述 主机地址 http:/ ...
- 解决Idea Jsp <%%>中 request resopnse等无自动提示的问题
解决办法:缺少Apache的lib依赖, 只需 File->Project Srructure->Libraries 加号 找到Apache安装的lib目录添加依赖即可.亲测可用
- [bzoj2002][Hnoi2010]Bounce弹飞绵羊——分块
Brief description 某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏.游戏一开始,Lostmonkey在地上沿着一条直线摆上n个装 ...
- [bzoj2124]等差子序列——线段树+字符串哈希
题目大意 给一个1到N的排列\(A_i\),询问是否存在\(p_i\),\(i>=3\),使得\(A_{p_1}, A_{p_2}, ... ,A_{p_len}\)是一个等差序列. 题解 显然 ...
- js中typeof 与instanceof的区别
1.typeof 用来检测给定变量的数据类型,其返回的值是下列某个字符串: "undefined":变量未定义 "boolean":变量为布尔类型 " ...
- pychart
Pychart PyChart is a Python library for creating high quality Encapsulated Postscript, PDF, PNG, or ...