Hadoop生态圈-大数据生态体系快速入门篇

              Hadoop生态圈-大数据生态体系快速入门篇

                                      作者:尹正杰

版权声明:原创作品,谢绝转载!否则将追究法律责任。

 

 

一.大数据概念

1>.什么是大数据

  大数据(big data):是指无法在一定时间范围内用常规软件进行捕捉,管理和处理的数据集合,是需要新处理模式才能具有更强的决策力,洞察发现力和流程优化能力的海量,高增长率和多样化的信息资产。

  大数据技术主要解决两个问题,即海量的存储和海量的数据的分析计算。

2>.数据存储单位介绍

  按照顺序给出数据存储单位如:Bit,Byte,KB,MB,GB,TB,PB,EB,ZB,YB,BB,NB,DB。换算单位如下:

1Byte  =    8   Bit
1K       = 1024 Byte
1MB    = 1024 KB
1GB     = 1024 MB
1TB      = 1024 GB
1PB      = 1024 TB
1EB      = 1024 PB
1ZB      = 1024 EB
1YB      = 1024 ZB
1BB      = 1024 YB
1NB     = 1024 BB
1DB      = 1024 NB

 3>.大数据特点

   大数据最明显的特点简单的来说就是四个V,即:Volume(大量),Velocity(高速),Variety(多样),Value(低价值密度)。

1>.Volume(大量)
    截止目前,人类生成的所有印刷材料的数据量是200PB,而历史上全人类总共说过的话的数据量大约是5EB,
当前,典型个人计算机硬盘的容量为TB量级,而一些大企业的数据量已经接近EB量级。

2>.Velocity(高速)
    这是大数据区分与传统数据挖掘的最显著特征。根据IDC的“数字宇宙”的报告,预计到2020年,全球数据
使用量将达到35.2ZB。在如此海量的数据面前,处理数据的效率就是企业的生命。

3>.Variety(多样)
    这种类型的多样性也让数据被分为结构化数据和非结构化数据。相对于以往便于存储的以数据库/文本为主的
结构化数据,非结构化的数据越来越多,包括网络日志,音频,视频,图片,地理位置信息等等,这些多类型的数
据的处理能力提出了更高的要求。

4>.Value(低价值密度)
    价值密度的高低与数据总量的大小成反比,如何快速对有价值的数据“提纯”称为目前大数据背景下待解决的
难题。

 4>.企业的组织结构

  大数据工程师的岗位还是蛮紧缺的,尤其是在数据挖掘方向,其实从事大数据主要分三个方向,即大数据运维,大数据开发,大数据分析,其实大数据报表貌似跟大数据不咋搭边。下图是我在网上描述对企业大数据部门的一般组织结构,那么问题来了?如果你想要从事大数据工作,你会选择哪个方向呢?

 

 

二.从Hadoop框架讨论大数据生态圈

1>.Hadoop是什么

Hadoop是什么
    1>.Hadoop是一个由Apache基金会所开发的分布式洗头膏基础架构;
    2>.主要解决:海量数据的存储和海量数据的分析计算为题;
    3>.广义上来说,Hadoop通常是指一个更广泛的概念,它指的不仅仅是Hadoop这款软件,而是指的是Hadoop生态圈;
    

2>.Hadoop发展历史

Hadoop发展历史
    1>.Lunce-Doug开创的开源软件,用Java书写代码,实现与Google类似的全文搜索功能,它提供了全文检索引擎的架构,
包括完整的查询引擎和搜索引擎;
    2>.2001年年底称为Apache基金会的一个子项目;
    3>.对于大数据的场景,Luence面对与Google同样的困难;
    4>.学习和模仿Google解决这些问题的办法:微型版Nutch
    5>.可以说Google是Hadoop的思想之源(Google在大数据方面的三篇论文)
        GFS              ----催化剂----> HDFS
        Map-Reduce         ----催化剂----> MR
        BigTable        ----催化剂----> HBase
    6>.2003-2004年,Google公开了部分GFS和MapReduce思想的细节,以此为基础Doug Cutting等人用了2年业余时间实现了DFS和MapReduce机制,使Nutch性能飙升;
    7>.2005年Hadoop作为Lucene的子项目,Nutch的一部分正式引入Apache基金会。2006年3月份,Map-Reduce和Nutch Distributed File System(NDFS)分别被纳入称为Hadoop的项目中
    8>.Hadoop的名字来源于Doug Cutting儿子的玩具大象;
    9>.Hadoop就此诞生并迅速发展,标志着大数据时代来临;

3>.Hadoop三大发行版本

Hadoop三大发行版本
    1>.Apache版本最原始(最基础)的版本,对于入门学习最好
        2005年Hadoop作为Lucene的子项目,Nutch的一部分正式引入Apache基金会。2006年3月份,Map-Reduce和Nutch Distributed File System(NDFS)分别被纳入称为Hadoop的项目中。
        官网地址:http://hadoop.apache.org/
    2>.Cloudera是大型企业互联网企业中的较多(按照技术服务收费)
        2.1>.2008年成立的Coudera是最早将Hadoop商用的公司,为合作伙伴提供Hadoop的商用解决方案,主要包括支持,咨询服务,培训;
        2.2>.2009年Hadoop的创始人Doug Cutting也加盟Cloudera公司。Cloudera产品主要为CDH,Cloudera Manager,Cloudera Support;
        2.3>.CDH是Cloudera的Hadoop发行版,完全开源,比Apache Hadoop在兼容性,安全性,稳定性上有所增强;
        2.4>.Coundera Manager是集群的软件分发及管理监控平台,开源在几个小时内部署好的一个Hadoop集群,并对集群的节点及服务进行实时监控。Cloudera Support即是对Hadoop的技术支持;
        2.5>.Cloudera的标价为每年每个节点4000美元。Cloudera开发并贡献了可实时处理大数据的Impala项目。
        官网地址:https://www.cloudera.com/downloads/cdh/5-10-0.html
        下载地址:http://archive-primary.cloudera.com/cdh5/cdh/5/
    3>.Hortonworks文档比较好,它是后起之秀起步较晚
        3.1>.2011年成立的Hortonworks是雅虎与硅谷风投公司Benchmark Capital合资组建;
        3.2>.公司成立之初最吸纳了大约25名至30名专门研究Hadoop的雅虎工程师,上述工程师均在2005年开始协助雅虎开发Hadoop,贡献了Hadoop 80%的代码;
        3.3>.雅虎工程副总裁,雅虎Hadoop开发团队负责人Eric Baldeschwieler 出任Hortonworks的首席执行官;
        3.4>Hortonworks的主打产品是Hortonworks Data Platform(HDP),也同样是100%开源的产品,HDP除常见的项目还包括Ambari,一款开源的安装呵呵管理系统;
        3.5>.HCatalog,一个元数据管理系统,Hcatalog现已集成到Facebook开源的Hive中。Hortonworks的Stringer开创性的极大的优化了Hive项目。Hortonworks为入门提供了一个非常好的,易于使用的沙盒;
        3.6>.Hortonworks开发很多增强特性并提交至核心主干,这使得Apache Hadoop能够在包括Windows Server和Windows Azure在内的Microsoft Windows平台上本地运行。定价以集群为基础,每10个节点每年为12500美元;
        官网地址:https://hortonworks.com/products/data-platforms/
        下载地址:https://hortonworks.com/downloads/#data-paltform
        

4>.Hadoop的优势

Hadoop的优势
    1>.高可靠性
        因为Hadoop假设计算元素的和存储会出现故障,因为它维护多个工作数据副本,在出现故障时可以对失败的节点重新分布处理。
    2>.高扩展性
        在集群间分配任务数据,可方便的扩展数以千计的节点。
    3>.高效性
        在MapReduce的思想下,Hadoop是并行工作的,以加快任务处理速度。
    4>.高容错性
        自动保存多个副本数据,并且能够自动将失败的任务重新分配。

5>.Hadoop组成

1>.Hadoop概述
    1.1>.Hadoop HDFS: 一个高可用,高吞吐量的分布式文件系统,提供数据存储;
    1.2>.Hadoop MapReduce:一个分布式的离线并行计算框架;
    1.3>.Hadoop YARN:作业调度与集群资源管理的框架,提供资源调度;
    1.4>.Hadoop Common:共同模块,支持其他模块的工具模块。
    
2>.HDFS架构概述
    2.1>.NameNode(简称nn)
        负责存储文件的元数据,如文件名,文件目录结构,文件属性(生成时间,副本数,文件权限),以及每个文件的块列表和块所在的DataNode等等。
    2.2>.DataNode(简称dn)
        负载在本地文件系统存储文件块数据,以及块数据的校验和。换句话说,它负责存储真实数据。
    2.3>.Secondary NameNode(简称2nn)
        负责用来监控HDFS状态的辅助后台程序,每隔一段时间获取HDFS元数据的快照。
    
3>.YARN架构概述
    3.1>.ResourceManager(简称rm)
        负责处理客户端请求,启动/监控ApplicationMaster,监控NodeManager,资源分配与调度。
    3.2>.NodeManager(简称nm)
        负责单个节点上的资源管理,处理来自ResourceManager的命令,处理来自ApplicationMaster的命令。
    3.3>.ApplicationMaster
        负责数据切分,为应用程序申请资源,并分配给内部任务,任务监控与容错。
    3.4>.Container
        负责对任务运行环境的抽象,封装CPU,内存等多位资源以及环境变量,启动命令等任务运行相关的信息。
    
3>.MapReduce架构概述
    MapReduce将计算过程分为两个阶段:即Map和Reduce(当然你在跟源码的时候发现其实在Map和Reduce阶段的前后还有很多细节!后期的文章会详细介绍的)
    3.1>.Map阶段并行处理输入数据
    3.2>.Reduce阶段对Map结构进行汇总

6>.大数据生态体系

 

 

 

posted @ 2018-08-10 08:18  尹正杰  阅读(708)  评论(0编辑  收藏  举报