二、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

客户端(client)代表用户与namenode和datanode交互来访问整个文件系统

Namenode: 元数据操作,打开、关闭、重命名文件及文件夹、文件块到DataNode映射
DataNode: 文件块生成、删除、复制及执行NameNode的指令

HDFS通过多个文件块来实现大文件存储,所有的文件块都是同样大小(除了最后一个文件块);
NameNode决定文件块的复制,NameNode定时会收到DataNode的心跳包及块报告。

2.4、Hadoop任务调度和资源管理框架-YARN

YARN 是 Hadoop 中的资源管理系统,它是一个通用的资源管理模块,可为各类应用程序进行资源管理和调度。

ResourceManager :处理客户端请求、启动/监控ApplicationMaster、监控NodeManager、资源分配与调度
NodeManager:单个节点上的资源管理、处理来自ResourceManager的命令、处理来自ApplicationMaster的命令
ApplicationMaster:数据切分、为应用程序申请资源,并分配给内部任务、任务监控与容错

  • ResourceManager由Scheduler和ApplicationMaster组成;
  • Scheduler: 对各个任务及队列分配资源,没有监控及对任务状态的追踪,同时也不保证对失败的任务进行重试
  • ApplicationManager: 接受提交的任务,协调第一个用于启动ApplicationMaster的container,同时针对ApplicationMaster的失败提供重试
  • ApplicationMaster:从Scheduler请求合适的资源containers,追踪状态及监控进度

2.5、Hadoop分布式编程模型-MapReduce

MapReduce是Google提出的一个软件架构,用于大规模数据集(大于1TB)的并行运算。概念“Map(映射)”和“Reduce(归纳)”,及他们的主要思想,都是从函数式编程语言借来的,还有从矢量编程语言借来的特性。

当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新的键值对,指定并发的Reduce(归纳)函数,用来保证所有映射的键值对中的每一个共享相同的键组。

学习笔记Hadoop(二)—— Hadoop介绍(2)——Hadoop 核心组件相关推荐

  1. GNN学习笔记(二)表征学习基本介绍

    GNN学习笔记(二)表征学习基本介绍 一.表征学习(Representation Learning) 1.什么是表征学习 2.传统表征学习(特征工程)的局限性 3.表征学习的分类 4.如何判断表征学习 ...

  2. HiveQL学习笔记(二):Hive基础语法与常用函数

    本系列是本人对Hive的学习进行一个整理,主要包括以下内容: 1.HiveQL学习笔记(一):Hive安装及Hadoop,Hive原理简介 2.HiveQL学习笔记(二):Hive基础语法与常用函数 ...

  3. SVO学习笔记(二)

    SVO学习笔记(二) 这篇文章 稀疏图像对齐 地图点投影(地图与当前帧间的关系) reprojectMap reprojectPoint reprojectCell 特征点对齐中的非线性优化 结尾 这 ...

  4. opencv学习笔记(二):基于肤色的人手检测

    opencv学习笔记(二):基于肤色的人手检测 原文:http://blog.csdn.net/wzmsltw/article/details/50849810 先写了人手的检测程序,下一步基于检测程 ...

  5. python做直方图-python OpenCV学习笔记实现二维直方图

    本文介绍了python OpenCV学习笔记实现二维直方图,分享给大家,具体如下: 官方文档 – https://docs.opencv.org/3.4.0/dd/d0d/tutorial_py_2d ...

  6. TensorFlow学习笔记(二):快速理解Tutorial第一个例子-MNIST机器学习入门 标签: 机器学习SoftmaxTensorFlow教程 2016-08-02 22:12 3729人阅

    TensorFlow学习笔记(二):快速理解Tutorial第一个例子-MNIST机器学习入门 标签: 机器学习SoftmaxTensorFlow教程 2016-08-02 22:12 3729人阅读 ...

  7. 学习笔记(二)——CSS基础

    文章目录 一.什么是CSS 二.CSS基本使用 2.1.行内式(内联样式) 2.2.内部样式 2.3.外部样式 2.3.1.嵌入式 2.3.2.导入式 三.选择器 3.1.基础选择器 3.1.1.标签 ...

  8. OpenCV学习笔记(二十六)——小试SVM算法ml OpenCV学习笔记(二十七)——基于级联分类器的目标检测objdect OpenCV学习笔记(二十八)——光流法对运动目标跟踪Video Ope

    OpenCV学习笔记(二十六)--小试SVM算法ml 总感觉自己停留在码农的初级阶段,要想更上一层,就得静下心来,好好研究一下算法的东西.OpenCV作为一个计算机视觉的开源库,肯定不会只停留在数字图 ...

  9. OpenCV学习笔记(二十一)——绘图函数core OpenCV学习笔记(二十二)——粒子滤波跟踪方法 OpenCV学习笔记(二十三)——OpenCV的GUI之凤凰涅槃Qt OpenCV学习笔记(二十

    OpenCV学习笔记(二十一)--绘图函数core 在图像中,我们经常想要在图像中做一些标识记号,这就需要绘图函数.OpenCV虽然没有太优秀的GUI,但在绘图方面还是做得很完整的.这里就介绍一下相关 ...

  10. jvm学习笔记(二)

    jvm学习笔记(二) 文章目录 jvm学习笔记(二) 1.全部笔记链接 2. Native关键字 3.关于JVM规范 3.1 JVM规范中运行时数据区的概念 4.HotSpot的JVM运行时数据区 4 ...

最新文章

  1. Excel随机选取指定数据
  2. centos部署openstack--网络规划(openvswitch的安装)
  3. 在windows server 2012R2中安装域服务
  4. 【JEECG 官方】技术支持联系方式
  5. 纯野今日之最:面试谈
  6. 很多家长学历不高,无法辅导孩子的家庭作业怎么办?
  7. WPF笔记汇总之ListView控件
  8. 概率密度变换公式 雅可比矩阵_连续型随机变量“分布函数”与“概率密度”之间求变换公式...
  9. JVM从入门到入魔(一) 类加载机制
  10. 帆软 finereport FCRA 考试 题库+答案,共收录561题,大部分有答案
  11. CAJ格式文档转PDF格式文档的办法(不需要下载杂七杂八的软件或者充会员)
  12. 时光穿梭机特效如何制作?建议试试这个时光机穿梭工具
  13. 我的黑马生涯——真实黑马学员感言
  14. 智利银行在勒索软件攻击后关闭了所有分行
  15. Tomcat服务器安装、配置教程
  16. java基于Android校园购物商城小超市
  17. openwrt下无线网桥设置,bridge AP模式
  18. Linux系统管理员应该了解的一些I/O统计工具
  19. Android中区分滑动和点击操作
  20. java 修改gps,改机 - 从源码着手任意修改GPS地理位置

热门文章

  1. java调用matlab 数组_JAVA调用matlab程序 输入输出数据转换
  2. 119. Leetcode 115. 不同的子序列 (动态规划-子序列问题)
  3. Bag of Tricks for Efficient Text Classification(Fasttext)
  4. 李宏毅线性代数笔记3:行列式det
  5. 听说你想去大厂看学妹,带你看看京东软件产品经理面经
  6. Java第一个程序Helloworld
  7. 基于面板数据的熵值法
  8. MatLab基础设置
  9. Python编程基础:第三十节 文件检测File Detection
  10. 让你的spring-boot应用日志随心所欲--spring boot日志深入分析