【大数据-Hadoop】从入门到源码编译-概念篇
- Hadoop与大数据生态
-
- (一)Hadoop是什么?
- (二)Hadoop组成
-
- [1. HDFS](#1. HDFS)
-
- [1.1 NameNode(nn)](#1.1 NameNode(nn))
- [1.2 DataNode(dn)](#1.2 DataNode(dn))
- [1.3 Secondary NameNode(2nn)](#1.3 Secondary NameNode(2nn))
- 2.YARN
-
- [2.1 ResourceManager(RM)](#2.1 ResourceManager(RM))
- [2.2 NodeManager(NM)](#2.2 NodeManager(NM))
- [2.3 ApplicationMaster(AM)](#2.3 ApplicationMaster(AM))
- [2.4 Container](#2.4 Container)
- 2.MapReduce
- (三)Hadoop发行版本
-
- [1. Apache](#1. Apache)
- [2. Cloudera(CDH)-收费](#2. Cloudera(CDH)-收费)
- [3. Hortonworks(HDP,现已被Cloudera收购,推出了CDP产品)](#3. Hortonworks(HDP,现已被Cloudera收购,推出了CDP产品))
- (四)Hadoop优势
-
- [1. 高可靠性](#1. 高可靠性)
- [2. 高扩展性](#2. 高扩展性)
- [3. 高效性](#3. 高效性)
- [4. 高容错性](#4. 高容错性)
- (五)大数据生态体系
文章已收录至https://lichong.work,转载请注明原文链接。
ps:欢迎关注公众号"Fun肆编程"或添加我的私人微信交流经验🤝
Hadoop与大数据生态
(一)Hadoop是什么?
1)是Apache基金会开发的分布式系统基础架构。
2)解决海量数据的存储 和计算 问题。
3)广义上讲,Hadoop更是一个生态圈!
(二)Hadoop组成
1.x
- Common(辅助工具)
- HDFS(数据存储)
- MapReduce(计算+资源调度)
2.x & 3.x
- Common(辅助工具)
- HDFS(数据存储)
- MapReduce(计算)
- YARN(资源调度)
1. HDFS
1.1 NameNode(nn)
存储文件的元数据,如文件名、文件目录结构、文件属性(生成时间、副本数、文件权限)、以及每个文件的块列表和块所在的DataNode等。
1.2 DataNode(dn)
在本地文件系统存储文件块数据,以及块数据的校验和。
1.3 Secondary NameNode(2nn)
用来监控HDFS状态的辅助后台程序,每隔一段时间获取HDFS元数据的快照。
2.YARN
2.1 ResourceManager(RM)
1)处理客户端请求
2)监控NodeManager
3)启动或监控ApplicationMaster(对应执行Job)
4)资源的分配与调度
2.2 NodeManager(NM)
1)管理单个节点上的资源
2)处理来自ResourceManager的命令
3)处理来自ApplicationMaster的命令
2.3 ApplicationMaster(AM)
1)负责数据的切分
2)为应用程序申请资源并分配给内部的任务
3)任务的监控与容错
2.4 Container
是YARN中的资源抽象,它封装了某个节点上的多维度资源,如内存、CPU、磁盘、网络等。
2.MapReduce
Map阶段:并行处理输入数据
Reduce阶段:对Map结果进行汇总
(三)Hadoop发行版本
1. Apache
2006年推出
原始的基础版本,对于入门学习最好。
2. Cloudera(CDH)-收费
2009年Hadoop创始人加入后推出,现在收费,更加稳定。
3. Hortonworks(HDP,现已被Cloudera收购,推出了CDP产品)
2011年成立,吸纳Hadoop的雅虎程序员贡献了80%的Hadoop代码,文档较好,Hortonworks Data Platform(HDP)还包括了Ambari(开源的安装和管理系统)。
(四)Hadoop优势
1. 高可靠性
底层有多个数据副本,即使存储故障,也不会导致数据丢失
2. 高扩展性
可以动态增加服务器
3. 高效性
并行工作(MapReduce思想)
4. 高容错性
可以自动把失败任务重新分配
(五)大数据生态体系
文章已收录至https://lichong.work,转载请注明原文链接。
ps:欢迎关注公众号"Fun肆编程"或添加我的私人微信交流经验🤝
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~往期精选🪶~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
【Docker】入门教程-基本概念解读
【前端-React Native】移动端原生开发整合React Native Elements教程-安卓示例
【前端-开发环境】使用NVM实现不同nodejs版本的自由切换(NVM完整安装使用手册)
【前端-NPM私服】内网使用verdaccio搭建私有npm服务器
【前端-IE兼容】Win10和Win11使用Edge调试前端兼容IE6、IE7、IE8、IE9、IE10、IE11问题
【前端-工程化】React项目工程化记录-内置项目活文档(老项目升级优化-集成Hosky/ESLint/Prettier-升级Webpack/Babel/NodeSass/React)
【工具-TWRP-frp-Termux】旧手机暴改成免费云服务器-MIUI刷TWRP安装magisk获取root
【工具-Shell脚本】java程序产品包模板-linux和windows通用shell启动停止脚本(无需系统安装Java运行环境)
【工具-Nginx】从入门安装到高可用集群搭建
【工具-Nginx】Nginx高性能通用配置文件-注释版-支持防刷限流、可控高并发、HTTP2、防XSS、Gzip、OCSP Stapling、负载、SSL
【工具-WireShark】网络HTTP抓包使用教程
【后端-maven打包】通过profile标签解决同时打jar包 war包需求
【架构-DDD】使用领域驱动设计-互联网未来架构设计之道(一)
【后端-SpringCache】基于Spring Cache封装一个能够批量操作的Redis缓存记录下踩坑历程(pipeline或mget封装)
【后端-SkyWalking】SkyWalking前后端开发环境搭建详细教程步骤-6.x/7.x/8.x版本通用-插件二次开发利器(一)
【后端-Quartz】Springboot整合Quartz支持集群环境-设计业务与框架分离及实现定时任务调度
✨欢迎为耿直少年点赞、关注、收藏!!!
👇👇👇