Hadoop大数据开发框架学习
一.Hadoop框架介绍
hadoop是Apache发布的开源分布式基础架构
他的两个核心是
- HDFS
HDFS是Hadoop的文件管理系统,负责了海量数据的存储,是做大数据的基础 - MapReduce
MapReduce则是为了海量数据提供了计算
两部分就组成了Hadoop的分布式基础架构
二.HDFS介绍
HDFS作为Hadoop为存储海量数据,自然有着与传统文件系统有着不同的结构,它是以Linux文件系统的基础的架构,构建里一套分布式文件系统,它是由一个NameNode和多台DataNode组成的。
他通过将文件进行划分,分成多个数据块进行存储。(默认64MB,一般设置为128MB,备份X3)
NameNode
- 管理文件系统的命名空间,存放文件元数据
- 维护文件系统的所有文件和目录,文件与数据块的映射
- 记录每个文件中各个块所在数据节点的信息
DataNode
- 存储并检索数据块
- 香NameNode更新所存储块的列表
优点
- 适合大文件存储,有副本策略
- 可以构建在廉价机器上,有一定容错和恢复机制
- 支持流式数据访问,一次写入多次读取
缺点
- 不适合大量小文件存储
- 不适合并发写入,不支持文件随机修改
- 不支持随机读等低延时的访问方式
二.Yarn
yarn是Hadoop 中的资源管理器,MapReduce通过yarn来调度。
ResourceManager
- 分配和调度资源
- 启动并监控ApplicationMaster
- 监控NodeManager
ApplicationMaster
- 为MapReduce类型程序申请资源,并分配给内部任务
- 负责数据的切分
- 监控任务的执行与容错
NodeManager
- 管理单个节点的资源
- 处理来自ResourceManager的命令
- 处理来自ApplicationMaster的命令
四.MapReduce
MapReduce采用分而治之的编程思想
- 输入一个大文件,通过split之后,将其分为多个分片
- 每个文件分片由单独的机器去处理,这就是Map方法
- 将每个机器计算的结果进行汇总并得到最终的结果,这就是Reduce方法
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
专访20年技术老兵云郎:16年峰回路,每一步都是更好的沉淀
1. 从技术研发到产品经理 3次峰回路转 这条路,他走了16年 一个懂技术的产品 更有底气和研发“叫板” 一个具备产品思维的技术 更明白未来的方向 张良模,花名云郎。1997年入行做通信软件研发;8年后转型IT行业,曾任Oracle(甲骨文)中国云计算首席架构师;2014年进入阿里云,做过2年产品培训,现为阿里巴巴大数据平台MaxCompute产品负责人。场主见过很多瞄准CTO岗位逆流而上的程序员,也认识很多挣扎后放弃转而创业的技术人,但是从技术转型成产品却不多。 做产品,是不是技术人未来的一个可能? 当产品懂技术,当技术具备了产品思维,那么不管是对于技术本身来说还是对于产品落地而言都会是一个强有力的推进。 场主认为,转型成功的云郎或许可以给到你一些启发。 以花名明志。 阿里素有武侠文化,但如今很多阿里人的花名却是杜撰,云郎亦然。 初入阿里,张良模为花名而
- 下一篇
Spark Streaming实时流处理学习
目录 1.初识实时流处理 2.分布式日志收集框架Flume 3.分布式发布订阅消息系统Kafka 4.实战环境搭建 5.Spark Streaming入门 6.Spark Streaming核心概念与编程 7.Spark Streaming进阶与案例实战 8.Spark Streaming整合Flume 9.Spark Streaming整合Kafka 10.Spark Streaming整合Flume&Kafka打造通用流处理基础 11.Spark Streaming项目实战 12.可视化实战
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- CentOS关闭SELinux安全模块
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS7,8上快速安装Gitea,搭建Git服务器
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Red5直播服务器,属于Java语言的直播服务器
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16