01 hadoop介绍、架构原理

本文介绍了Hadoop,它是Apache用Java实现的开源软件框架,用于处理大规模数据。狭义上核心组件有HDFS、YARN、MAPREDUCE;广义指Hadoop生态圈。还阐述了Hadoop2.x的高可用架构,包括HDFS和Yarn系统各节点功能,以及zkfc的作用。

 

一、什么是hadoop

 

1.1 hadoop组成

1、Hadoop是Apache旗下的一个用java语言实现开源软件框架,是一个开发和运行处理大规模数据的软件平台。允许使用简单的编程模型在大量计算机集群上对大型数据集进行分布式处理。

狭义上说,Hadoop指Apache这款开源框架,它的核心组件有:

HDFS(分布式文件系统):解决海量数据存储

YARN(作业调度和集群资源管理的框架):解决资源任务调度

MAPREDUCE(分布式运算编程框架):解决海量数据计算

 

2、广义上来说,Hadoop通常是指一个更广泛的概念——Hadoop生态圈。


 

当下的Hadoop已经成长为一个庞大的体系,随着生态系统的成长,新出现的项目越来越多,其中不乏一些非Apache主管的项目,这些项目对HADOOP是很好的补充或者更高层的抽象。比如:

 

框架

用途

HDFS

 分布式文件系统

MapReduce

分布式运算程序开发框架

ZooKeeper

分布式协调服务基础组件

HIVE

基于HADOOP的分布式数据仓库,提供基于SQL的查询数据操作

FLUME

日志数据采集框架

oozie

工作流调度框架

Sqoop

数据导入导出工具(比如用于mysql和HDFS之间)

Impala

基于hive的实时sql查询分析

Mahout

基于mapreduce/spark/flink等分布式运算框架的机器学习算法库

 

二、hadoop2.x架构

 

2.1 高可用架构图

 

 

左边是hadoop文件系统、右边是hadoop计算部分

1.HDFS分布式文件系统

NameNode:集群当中的主节点,主要用于管理集群当中的各种数据,其中NameNode可以有两个,形成高可用状态

DataNode:集群当中的从节点,用于数据的存储

JournalNode:元数据信息管理进程,一般都是奇数个

 

2.yarn资源调度系统

ResourceManager:Yarn平台的主节点,主要用于接收各种任务,通过两个,构建成高可用

NodeManager:Yarn平台的从节点,主要用于处理ResourceManager分配的任务

 

zkfc是什么?

ZooKeeperFailoverController

它是什么?

是Hadoop中通过ZK实现FC功能的一个实用工具。

主要作用:作为一个ZK集群的客户端,用来监控NN的状态信息,主备NN的切换

谁会用它?每个运行NN的节点必须要运行一个zkfc

注意:ResourceManager可以有多个

注意: namenode只能有2个

 


 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值