学习笔记Hadoop(二)—— Hadoop介绍(2)——Hadoop 核心组件
二、Hadoop 核心组件
2.1、Apache Hadoop简介
Apache Hadoop是一套用于在由通用硬件构建的大型集群上运行应用程序的框架。它实现了Map/Reduce编程范型,计算任务会被分割成小块(多次)运行在不同的节点上。除此之外,它还提供了一款分布式文件系统(HDFS),数据被存储在计算节点上以提供极高的跨数据中心聚合带宽。
优点:
高可靠性、高扩展性、高效性、高容错性、低成本
2.2、主要模块
- Hadoop Common:基础工具库用以支持其他模块
- HDFS:高可用的分布式文件存储系统
- Hadoop YARN:任务调度和集群资源管理框架
- MapReduce:分布式编程模型
- Hadoop Ozone:Hadoop类存储模型
2.3、Hadoop 分布式文件系统-HDFS
![](/assets/blank.gif)
客户端(client)代表用户与namenode和datanode交互来访问整个文件系统
Namenode: 元数据操作,打开、关闭、重命名文件及文件夹、文件块到DataNode映射
DataNode: 文件块生成、删除、复制及执行NameNode的指令
![](/assets/blank.gif)
HDFS通过多个文件块来实现大文件存储,所有的文件块都是同样大小(除了最后一个文件块);
NameNode决定文件块的复制,NameNode定时会收到DataNode的心跳包及块报告。
2.4、Hadoop任务调度和资源管理框架-YARN
![](/assets/blank.gif)
YARN 是 Hadoop 中的资源管理系统,它是一个通用的资源管理模块,可为各类应用程序进行资源管理和调度。
![](/assets/blank.gif)
ResourceManager :处理客户端请求、启动/监控ApplicationMaster、监控NodeManager、资源分配与调度
NodeManager:单个节点上的资源管理、处理来自ResourceManager的命令、处理来自ApplicationMaster的命令
ApplicationMaster:数据切分、为应用程序申请资源,并分配给内部任务、任务监控与容错
![](/assets/blank.gif)
- ResourceManager由Scheduler和ApplicationMaster组成;
- Scheduler: 对各个任务及队列分配资源,没有监控及对任务状态的追踪,同时也不保证对失败的任务进行重试
- ApplicationManager: 接受提交的任务,协调第一个用于启动ApplicationMaster的container,同时针对ApplicationMaster的失败提供重试
- ApplicationMaster:从Scheduler请求合适的资源containers,追踪状态及监控进度
2.5、Hadoop分布式编程模型-MapReduce
MapReduce是Google提出的一个软件架构,用于大规模数据集(大于1TB)的并行运算。概念“Map(映射)”和“Reduce(归纳)”,及他们的主要思想,都是从函数式编程语言借来的,还有从矢量编程语言借来的特性。
当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新的键值对,指定并发的Reduce(归纳)函数,用来保证所有映射的键值对中的每一个共享相同的键组。
![](/assets/blank.gif)
学习笔记Hadoop(二)—— Hadoop介绍(2)——Hadoop 核心组件相关推荐
- GNN学习笔记(二)表征学习基本介绍
GNN学习笔记(二)表征学习基本介绍 一.表征学习(Representation Learning) 1.什么是表征学习 2.传统表征学习(特征工程)的局限性 3.表征学习的分类 4.如何判断表征学习 ...
- HiveQL学习笔记(二):Hive基础语法与常用函数
本系列是本人对Hive的学习进行一个整理,主要包括以下内容: 1.HiveQL学习笔记(一):Hive安装及Hadoop,Hive原理简介 2.HiveQL学习笔记(二):Hive基础语法与常用函数 ...
- SVO学习笔记(二)
SVO学习笔记(二) 这篇文章 稀疏图像对齐 地图点投影(地图与当前帧间的关系) reprojectMap reprojectPoint reprojectCell 特征点对齐中的非线性优化 结尾 这 ...
- opencv学习笔记(二):基于肤色的人手检测
opencv学习笔记(二):基于肤色的人手检测 原文:http://blog.csdn.net/wzmsltw/article/details/50849810 先写了人手的检测程序,下一步基于检测程 ...
- python做直方图-python OpenCV学习笔记实现二维直方图
本文介绍了python OpenCV学习笔记实现二维直方图,分享给大家,具体如下: 官方文档 – https://docs.opencv.org/3.4.0/dd/d0d/tutorial_py_2d ...
- TensorFlow学习笔记(二):快速理解Tutorial第一个例子-MNIST机器学习入门 标签: 机器学习SoftmaxTensorFlow教程 2016-08-02 22:12 3729人阅
TensorFlow学习笔记(二):快速理解Tutorial第一个例子-MNIST机器学习入门 标签: 机器学习SoftmaxTensorFlow教程 2016-08-02 22:12 3729人阅读 ...
- 学习笔记(二)——CSS基础
文章目录 一.什么是CSS 二.CSS基本使用 2.1.行内式(内联样式) 2.2.内部样式 2.3.外部样式 2.3.1.嵌入式 2.3.2.导入式 三.选择器 3.1.基础选择器 3.1.1.标签 ...
- OpenCV学习笔记(二十六)——小试SVM算法ml OpenCV学习笔记(二十七)——基于级联分类器的目标检测objdect OpenCV学习笔记(二十八)——光流法对运动目标跟踪Video Ope
OpenCV学习笔记(二十六)--小试SVM算法ml 总感觉自己停留在码农的初级阶段,要想更上一层,就得静下心来,好好研究一下算法的东西.OpenCV作为一个计算机视觉的开源库,肯定不会只停留在数字图 ...
- OpenCV学习笔记(二十一)——绘图函数core OpenCV学习笔记(二十二)——粒子滤波跟踪方法 OpenCV学习笔记(二十三)——OpenCV的GUI之凤凰涅槃Qt OpenCV学习笔记(二十
OpenCV学习笔记(二十一)--绘图函数core 在图像中,我们经常想要在图像中做一些标识记号,这就需要绘图函数.OpenCV虽然没有太优秀的GUI,但在绘图方面还是做得很完整的.这里就介绍一下相关 ...
- jvm学习笔记(二)
jvm学习笔记(二) 文章目录 jvm学习笔记(二) 1.全部笔记链接 2. Native关键字 3.关于JVM规范 3.1 JVM规范中运行时数据区的概念 4.HotSpot的JVM运行时数据区 4 ...
最新文章
- Excel随机选取指定数据
- centos部署openstack--网络规划(openvswitch的安装)
- 在windows server 2012R2中安装域服务
- 【JEECG 官方】技术支持联系方式
- 纯野今日之最:面试谈
- 很多家长学历不高,无法辅导孩子的家庭作业怎么办?
- WPF笔记汇总之ListView控件
- 概率密度变换公式 雅可比矩阵_连续型随机变量“分布函数”与“概率密度”之间求变换公式...
- JVM从入门到入魔(一) 类加载机制
- 帆软 finereport FCRA 考试 题库+答案,共收录561题,大部分有答案
- CAJ格式文档转PDF格式文档的办法(不需要下载杂七杂八的软件或者充会员)
- 时光穿梭机特效如何制作?建议试试这个时光机穿梭工具
- 我的黑马生涯——真实黑马学员感言
- 智利银行在勒索软件攻击后关闭了所有分行
- Tomcat服务器安装、配置教程
- java基于Android校园购物商城小超市
- openwrt下无线网桥设置,bridge AP模式
- Linux系统管理员应该了解的一些I/O统计工具
- Android中区分滑动和点击操作
- java 修改gps,改机 - 从源码着手任意修改GPS地理位置
热门文章
- java调用matlab 数组_JAVA调用matlab程序 输入输出数据转换
- 119. Leetcode 115. 不同的子序列 (动态规划-子序列问题)
- Bag of Tricks for Efficient Text Classification(Fasttext)
- 李宏毅线性代数笔记3:行列式det
- 听说你想去大厂看学妹,带你看看京东软件产品经理面经
- Java第一个程序Helloworld
- 基于面板数据的熵值法
- MatLab基础设置
- Python编程基础:第三十节 文件检测File Detection
- 让你的spring-boot应用日志随心所欲--spring boot日志深入分析