Hadoop构架概览
2024-10-20 05:36:23
hadoop是一个开源的软件框架,是一个利用商业硬件处理和存储大型数据的软件。从下到上主要有五个主要的组成部分:
- 集群,是一套主机(节点)组成的。节点可以以机架划分。这个是硬件级别的构架.
YARN构架 (目前为止的另外一个资源管理器)是一个负责提供计应用执行的时候需要的计算资源的框架(也就是cpu,内存等等). 两个重要的部分如下::
一个资源管理器 (每个集群一个) 作为master. 资源管理器知道下面的每一个slave节点在哪里(机架感知) 以及他们这些节点有哪些资源可以使用. master运行若干服务。最重要的是资源调度器,资源调度器决定怎样分配资源.
节点管理器 (一个集群有很多个r)是slave构架组成. 当节点管理器启动的时候,将自己注册到资源管理器,并且定时的相资源管理器发送心跳信息。每一个节点管理器提供自己的资源给集群。那么他的资源其实就是内存的大小,有多少个vcores。再运行时状态,资源调度器会决定如何使用这些资源:一个容器是这些资源的一部分并且被客户端用来运行一个程序。
HDFS是一个负责提供持久的,可靠的,分布式的存储框架。用来存储输入和输出(除开中间输出)。
- 其他的存储系统:例如Amazon S3.
- MapReduce 框架是一个实现mapreduce算法的软件层
YRAN构架以及HDFS完全分开并且彼此独立。前者提供资源并且运行一个程序后者则提供存储。mapreduce则很多可以运行在YRAN顶层的框架之一。(虽然目前为止还是唯一的,但是到2016就不唯一了)
YRAN:启动应用
在 YARN中, 至少有下面三个部分:
- Job Submitter (客户端)
- Resource Manager (master端)
- Node Manager (slave端)
应用的启动如下所示:
- 一个客户端提交一个程序给资源管理器
- 资源管理器分配一个容器
- 资源管理器联系相关的节点管理器
- 节点管理器启动容器
- 容器执行应用Master
应用Master负责单个应用的执行。他向资源调度器请求容器,执行特定的程序(例如java的main方法)。应用master知晓应用的逻辑因此是框架特特异的。mapreduce提供自己实现的应用master。
Charles 于2016-01-07 Phnom Penh
版权说明:
本文由Charles Dong原创,本人支持开源以及免费有益的传播,反对商业化谋利。
CSDN博客:http://blog.csdn.net/mrcharles
个人站:http://blog.xingbod.cn
EMAIL:charles@xingbod.cn
最新文章
- Github代理设置
- Beta版本——第二次冲刺博客
- 使用logrotate来进行轮换mysql的慢日志
- android 检查网络连接状态实现步骤
- (转)STL中set的用法
- SQL Server 2012 中 Update FROM子句
- ☀【jQuery 优化】jQuery基础教程(第3版)
- (转)怎么去掉Xcode工程中的某种类型的警告 Implicit conversion loses integer precision: 'NSInteger' (aka 'long') to 'int32
- php获取机器网卡的物理(MAC)地址
- mysql学习(五)-字段属性
- SetFocus、SetCapture和SetActiveView的区别
- 将[4,3,2,5,4,3]分割成[4,3,2]、[5,4,3]两个List的算法
- 201521123017 《Java程序设计》第9周学习总结
- 【转载】Ubuntu 12.04 LTS 中文输入法的安装
- 《Linux就该这么学》第十九天课程
- 前端-URL到页面显示的全过程
- Hibernate添加日志--log4j
- FHQ Treap及其可持久化与朝鲜树式重构
- CAS与LDAP集成
- How To: Implement a Major Upgrade In Your Installer
热门文章
- soj考试2
- Codeforces Round #563 (Div. 2) F. Ehab and the Big Finale
- 校园商铺-4店铺注册功能模块-1Dao层之更新店铺
- Oracle大数据查询优化
- day34 反射、面向对象内置方法:如__str__、面向对象的软件开发
- SQLite wrapper
- SpringBoot_03_SpringBoot对其他技术的整合
- js 当前时间和对比时间的比较
- JS 基本的介绍
- Java必备的几个开发工具,你会几个?