文档章节

Hadoop 生态圈介绍

bochs
 bochs
发布于 2016/11/17 11:50
字数 1322
阅读 62
收藏 0

简介

Hadoop 是一个能够处理海量数据的分布式系统基础软件框架,理论上能够通过增加计算节点以处理无限增长的数据,由java写成。其作者是 Doug Cutting,得益于谷歌的Map/Reduce计算模型和GFS分布式文件系统,Hadoop实现了其核心组件HDFS和MapReducce。Hadoop 是目前世界上大数据行业的主流软件框架。其生态圈非常庞大,并且社区很活跃。Hadoop本身仅有hadoop-common + hdfs + mapreduce 组成,hadoop2.x以后增加了yarn体系。

hadoop 的集群模式

hadoop 集群,从细的方面来说,总共分为四种模式:

  1. Single Node Cluster,即伪分布式模式(单机模式)
  2. Full Distributed Cluster,即完全分布式集群模式
  3. HA Cluster,即高可用集群模式
  4. HA + Federation Cluster,即高可用联邦集群模式

每一种方式都有其特定的使用场景,但一般数据规模很大的企业,都会选择HA+Federation模式,下面简要地介绍一下每一种模式的情况:

  1. 单机模式,将hadoop安装在一台机器上,通过进程来模拟各主机节点的协作和运行,其可靠性、稳定性都是非常差的,并且具备糟糕的性能效率,没有团队会在生产环境使用它。那么它是否就没有用呢?也不是的,通常使用这种模式进行开发和调试工作。
  2. 完全分布式模式,将hadoop部署在至少两台机子上,数据块副本的数量通常也设置为2以上。该模式的集群,无论规模多大,只拥有1台Namenode节点,且也是唯一Active的工作节点。Namenode(简称NN)相当于hadoop文件系统的管家,对集群的所有文件访问和操作都经由NN统一协调管理。可想,当集群规模越来越庞大时,仅有一台NN,必定是不堪重负,那么它很容易就会挂掉,一旦挂掉,不仅集群立即瘫痪,还很容易造成数据丢失。另外,该模式通常ResourceManager(RM)也仅部署1台,ResourceManager是yarn的管家,主要管理任务的执行,例如MapReduce任务。与NN类似,当集群提交的作业过于繁重时,其同样面临超负载的问题。那么此模式是否也无用武之地呢?也不是的,视业务、资金等情况而定,因为该模式日后也可以安全升级成高可用模式。
  3. 高可用模式,分为NN的高可用和RM的高可用。在完全分布式的基础上,增加备用NN和RM节点。NN高可用,也就是集群里面会部署两台NN(最多也只能两台),以形成主备NN节点,达到高可用的目的。RM高可用与NN高可用类似,也是在集群里部署备用RM节点。不过此种模式下集群里面依然只有一台NN/RM处于Active工作状态,另一台则处于Standby的等待状态。当Active的NN/RM出现问题无法工作时,Standby的那台则立即无缝切入,继续保障集群正常运转。这种模式是很多企业都使用的,但是依然有缺陷。什么缺陷呢?虽然集群的可用性问题解决了,但是性能瓶颈依然存在——仅有一台NN/RM,由于无法横向扩展,其很可能会超负载运行。
  4. 高可用联邦模式,解决了单纯HA模式的性能瓶颈。单纯的HA模式NN和RM之间虽然配置了HA,但是依旧仅有一台NN或RM同时运行,这可能会导致了NN或RM的负载过重,从而造成整个集群的性能瓶颈。而联邦模式将整个HA集群再划分为两个以上的集群,不同的集群之间通过Federation进行连接,不同集群间可以共享数据节点,也可以不共享,可以互相访问和操作数据,也可以不。这样便做到了HA集群的横向扩展,从而移除了单纯HA模式同时仅有1台NN/RM工作所带来的性能瓶颈。Federation模式,相当于在多个集群之上又构建了一个集群层次,从数据访问的角度看,也可以简单的将其理解为一台路由器,而每一个HA集群则是单独的网络,不同网络间通过Federation路由器进行沟通。此模式是目前hadoop生态中最高的一种模式,适用于规模较大的企业。

组件体系

hadoop hdfs mapreduce yarn zookeeper hive hbase sqoop pig Impala dubbo kudu storm kafka flume elasticsearch elk mahout ambari avro cassandra chukwa tez

spark spark-streaming
spark-sql spark-MLlib

概念

hadoop hdfs mapreduce fsimage edits namenode-metadata yarn zookeeper Namenode Secondary-Namenode Datanode ResourceManager(JobTracker) NodeManager(TaskTracker) ApplicationManager ApplicationMaster Container JobHistoryServer JobClient JournalNode

hadoop1.x hadoop2.x HA federation

以上众多组件的概念介绍,有机会注意补充~

© 著作权归作者所有

bochs
粉丝 13
博文 10
码字总数 35381
作品 0
深圳
私信 提问
大数据怎样才能踏入进去?年薪60万大数据架构师教你如何入门!

1.Linux基础和分布式集群技术 学完此阶段可掌握的核心能力: 熟练使用Linux,熟练安装Linux上的软件,了解熟悉负载均衡、高可靠等集群相关概念,搭建互联网高并发、高可靠的服务架构; 学完此...

董黎明
2018/06/09
71
0
hadoop生态圈的详解

学习和使用hadoop有一年了,这里主要分享一下对hadoop整体上的理解,分门别类的介绍一下相关组件,最后提供了建议的学习路线,希望对hadoop的初学者有参考作用。 1. Hadoop核心件组有哪些? 广...

cpaqyx
2017/06/25
0
0
一张图看懂hadoop生态圈

好多朋友觉得,通过扁平的文章了解hadoop生态圈不是很直观。 所以我抽时间,把hadoop生态圈中的各部分通过架构图的形式,直观的整理了出来, 方便对hadoop不了解的朋友更直观的了解hadoop。 ...

隐姓埋名啊
2017/03/31
3.6K
4
(第1篇)什么是hadoop大数据?我又为什么要写这篇文章?

前言 这些天,有很多人咨询我大数据相关的一些信息,觉得大数据再未来会是一个朝阳行业,希望能尽早学会、入行,借这个机会,我决定写一下关于大数据的知识和我这些年的感悟。 点击链接 http...

I加加
2017/03/06
0
0
Hadoop专业解决方案-第一章 大数据和Hadoop生态圈

一、前言:   非常感谢Hadoop专业解决方案群:313702010,兄弟们的大力支持,在此说一声辛苦了,经过两周的努力,已经有啦初步的成果,目前第1章 大数据和Hadoop生态圈小组已经翻译完成,在...

张子良
2014/01/21
580
0

没有更多内容

加载失败,请刷新页面

加载更多

java通过ServerSocket与Socket实现通信

首先说一下ServerSocket与Socket. 1.ServerSocket ServerSocket是用来监听客户端Socket连接的类,如果没有连接会一直处于等待状态. ServetSocket有三个构造方法: (1) ServerSocket(int port);...

Blueeeeeee
今天
6
0
用 Sphinx 搭建博客时,如何自定义插件?

之前有不少同学看过我的个人博客(http://python-online.cn),也根据我写的教程完成了自己个人站点的搭建。 点此:使用 Python 30分钟 教你快速搭建一个博客 为防有的同学不清楚 Sphinx ,这...

王炳明
昨天
5
0
黑客之道-40本书籍助你快速入门黑客技术免费下载

场景 黑客是一个中文词语,皆源自英文hacker,随着灰鸽子的出现,灰鸽子成为了很多假借黑客名义控制他人电脑的黑客技术,于是出现了“骇客”与"黑客"分家。2012年电影频道节目中心出品的电影...

badaoliumang
昨天
14
0
很遗憾,没有一篇文章能讲清楚线程的生命周期!

(手机横屏看源码更方便) 注:java源码分析部分如无特殊说明均基于 java8 版本。 简介 大家都知道线程是有生命周期,但是彤哥可以认真负责地告诉你网上几乎没有一篇文章讲得是完全正确的。 ...

彤哥读源码
昨天
15
0
jquery--DOM操作基础

本文转载于:专业的前端网站➭jquery--DOM操作基础 元素的访问 元素属性操作 获取:attr(name);$("#my").attr("src"); 设置:attr(name,value);$("#myImg").attr("src","images/1.jpg"); ......

前端老手
昨天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部