1、hadoop模型如下:

(上图为Hadoop1.x的布局)

(Hadoop2.x较Hadoop1.x,多了YARN)

Hadoop框架,是一个庞大的生态系统。

或者我们可以这样理解:

可以把整个体系,看成一个操作系统XP,win7,win8,win10。

HDFS和MapReduce为操作系统的核心,Hive,Pig,Mathout,Zookeeper,Flume,Sqoop,HBase等,都是操作系统上的一些软件,或应用。

2、HDFS:(Hadoop Distributed File System),Hadoop分布式文件系统。

从名字上就看出了它的两点功能。基本功能,存文件,是一个文件系统;另外这个文件系统是分布式的;

从图上来看,HDFS的简单原理。

Rack1,Rack2,Rack3是三个机架;

1,2,3,4,5,6,7,8,9,10,11,12 是机架上的十二台服务器。

Block A, Block B, Block C为三个信息块,也就是要存的数据。

从整体布局上来看,信息块被分配到机架上。看似很均匀。这样分配的目的,就是备份,防止某一个机器宕机后,单点故障的发生。

3、MapReduce,(Map + Reduce),就看成是计算的功能。可以对数据进行处理。

它加快了计算。主要也是通过上图的布局。将数据分布到多个服务器上。当有任务了,比如查询,或者比较大小,先让每台服务器,都处理自己的存储中文件。然后再将所有服务器的处理结果进行第二次处理。最后将结果返回。

另外,从别的资料看到一种解释mapreduce的方式,很简单

Goal: count the number of books in the?library.

Map: You count up shelf #1, I count up shelf?#2.

(The more people we get, the faster this part goes.?)

Reduce: We all get together and add up our individual?counts.

4、HADOOP的框架

HDFS

HDFS,(Hadoop Distributed File System) hadoop分布式文件系统。在Google开源有关DFS的论文后,由一位大牛开发而成。HDFS的建立在集群之上,适合PB级大量数据的存储,扩展性强,容错性高。它也是Hadoop集群的基础,大部分内容都存在了HDFS上。

MapReduce

MapReduce,是Hadoop中的计算框架,由两部分构成。Map操作以及Reduce操作。MapReduce,会生成计算的任务,分配到各个节点上,执行计算。这样就避免了移动集群上面的数据。而且其内部,也有容错的功能。在计算过程中,某个节点宕掉之后,会有策略进行应对。Hadoop集群,上层的一些工具,比如Hive或者Pig等,都会转换为基本的MapReduce任务来执行。

HBase

HBase源自谷歌的BigTable。HBase是面向列存储的数据库,性能高,扩展性强,可靠性高。HBase的内容,存储在HDFS上,当然它也可以使用其他的文件系统,如S3等。HBase作为一个顶级项目,使用频率很高。如:我们可以用来存储,爬虫爬来的网页的信息等。具体的HBase的概念请见后续详细说明。延迟较低。

Hive

Hive,是一个查询的工具,在HBase中,对于SQL的支持不太好。而Hive解决了这一类的问题。以sql形式操作hbase,更爽一些。Hive编写的一些sql语句,其实最后也还是会变成MapReduce程序。当然这种查询,不能与关系型数据库mysql等比较,hive查询时,是秒级或分钟级的,时间比较长。

Sqoop

Sqoop,也是一个很神奇的数据同步工具。在关系型数据库中,我们会遇到一种情景,将Oracle数据导入到Mysql,或者将Mysql数据,导入到Oracle。那其实Sqoop也是类似的功能。sqoop可以将Oracle,Mysql等关系型数据库中的数据,导入到HBase,HDFS上,当然也可以从HDFS或HBase导入到Mysql或Oracle上。

Flume

Flume,是日志收集工具,是分布式的,可靠的,容错的,可以定制的。应用场景如:100台服务器,需要监测各个服务器的运行情况,这时可以用flume将各个服务器的日志,收集过来。Flume也有两个版本。Flume OG 和Flume NG。现在基本都用NG了。

Impala

Impala是Cloudera公司主导开发的新型查询系统,它提供SQL语义,能查询存储在Hadoop的HDFS和HBase中的PB级大数据。已有的Hive系统虽然也提供了SQL语义,但由于Hive底层执行使用的是MapReduce引擎,仍然是一个批处理过程,难以满足查询的交互性。相比之下,Impala的最大特点也是最大卖点就是它的快速。Imapa可以和Phoenix,Spark Sql联系起来了解一下。

Spark

Spark是一个内存计算的框架。目前一个大的趋势。MapReduce会有很大的IO操作,而Spark是在内存中计算。速度是Hadoop的10倍(官网上这样说的)。Spark是目前一个趋势,是需要了解的。

Zookeeper

Zookeeper,动物管理员。Zookeeper叫分布式协作服务。作用主要是,统一命名,状态同步,集群管理,配置同步。Zookeeper在HBase,以及Hadoop2.x中,都有用到。

Mahout

数据挖掘算法库,里面内置了大量的算法。可以用来做预测、分类、聚类等。工具很强大,但是技术要求能力较高。

Pig

和Hive类似。具体区别自己搜搜。Pig可以构建数据仓库。可用来对数据仓库中数据,进行查询分析。Pig也有自己的查询语法,很不幸,不是sql形式,Pig Latin。

Ambari

Ambari是一个管理平台。可以对集群进行统一的部署。也是很方便的。

5、 HADOOP 的版本

Apache社区版本:

完全开源,免费,非商业。apache社区的hadoop版本分枝较多,而且部分hadoop存在bug。在选择hadoop,hbase,hive等时,需要考虑兼容性。

Cloudera版本:

开源,免费,有商业和非商业版本。是在apache社区版本的hadoop基础上,选择相对稳定版本的hadoop,并在此基础上,进行bug修改和维护。使用者不必考虑hadoop,hbase,hive等在使用过程中,版本兼容性。

Hortonworks版本:

开源,免费,有商业和非商业版本。是在Apache基础上修改,具有apache的特色。

6、大数据和云计算有什么区别

云计算(cloudcomputing)是基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。

云计算可以认为包括以下几个层次的服务:基础设施即服务(IaaS),平台即服务(PaaS)和软件即服务(SaaS)。

IaaS(Infrastructure-as-a- Service):基础设施即服务。消费者通过Internet可以从完善的计算机基础设施获得服务。例如:硬件服务器租用。
PaaS:平台即服务

PaaS(Platform-as-a- Service):平台即服务。PaaS实际上是指将软件研发的平台作为一种服务,以SaaS的模式提交给用户。因此,PaaS也是SaaS模式的一种应用。但是,PaaS的出现可以加快SaaS的发展,尤其是加快SaaS应用的开发速度。例如:软件的个性化定制开发。
SaaS:软件即服务

SaaS(Software-as-a- Service):软件即服务。它是一种通过Internet提供软件的模式,用户无需购买软件,而是向提供商租用基于Web的软件,来管理企业经营活动。例如:阳光云服务器。

现在用的hadoop是位于云计算中PaaS一层。

大数据(big data),或称巨量资料,大的数据需要特殊的技术,以有效地处理大量的容忍经过时间内的数据。

7、公有云和私有云有什么区别

①、公有云是放在Internet上的,只要是注册用户、付费用户都可以用;

②、私有云是放在私有环境中的,比如企业、政府、组织等等自己在机房中建立的,或者是运营商建设好,但是整体租给某一组织的。企业、组织、政府等之外的用户无法访问或无法使用;

③、混合云是公有云和私有云的混合,大多数是指私有云建设好了,但是很多资源(计算能力或存储空间)不够用,所以还得动态的在公网上申请公有云作为自己私有云的补充。

大数据(1)初始hadoop的更多相关文章

  1. 一篇了解大数据架构及Hadoop生态圈

    一篇了解大数据架构及Hadoop生态圈 阅读建议,有一定基础的阅读顺序为1,2,3,4节,没有基础的阅读顺序为2,3,4,1节. 第一节 集群规划 大数据集群规划(以CDH集群为例),参考链接: ht ...

  2. 大数据时代之hadoop(五):hadoop 分布式计算框架(MapReduce)

    大数据时代之hadoop(一):hadoop安装 大数据时代之hadoop(二):hadoop脚本解析 大数据时代之hadoop(三):hadoop数据流(生命周期) 大数据时代之hadoop(四): ...

  3. 大数据测试之初识Hadoop

    大数据测试之初识Hadoop POPTEST老李认为测试开发工程师是面向测试的开发,也就是说,写代码就是为完成测试任务服务的,写自动化测试(性能自动化,功能自动化,安全自动化,接口自动化等等)的cas ...

  4. 从Hadoop Summit 2016看大数据行业与Hadoop的发展

    前言: 好吧我承认已经有四年多没有更新博客了.... 在这四年中发生了很多事情,换了工作,换了工作的方向.在工作的第一年的时候接触机器学习,从那之后的一年非常狂热的学习机器学习的相关技术,也写了一些自 ...

  5. ASP.NET + SqlSever 大数据解决方案 PK HADOOP

    半个月前看到博客园有人说.NET不行那篇文章,我只想说你们有时间去抱怨不如多写些实在的东西.  1.SQLSERVER优点和缺点? 优点:支持索引.事务.安全性以及容错性高 缺点:数据量达到100万以 ...

  6. 大数据 --> Spark与Hadoop对比

    Spark与Hadoop对比 什么是Spark Spark是UC Berkeley AMP lab所开源的类Hadoop MapReduce的通用的并行计算框架,Spark基于map reduce算法 ...

  7. 白话大数据 | Spark和Hadoop到底谁更厉害?

    要想搞清楚spark跟Hadoop到底谁更厉害,首先得明白spark到底是什么鬼. 经过之前的介绍大家应该非常了解什么是Hadoop了(不了解的点击这里:白话大数据 | hadoop究竟是什么鬼),简 ...

  8. 大数据计算框架Hadoop, Spark和MPI

    转自:https://www.cnblogs.com/reed/p/7730338.html 今天做题,其中一道是 请简要描述一下Hadoop, Spark, MPI三种计算框架的特点以及分别适用于什 ...

  9. 【大数据】了解Hadoop框架的基础知识

    介绍 此Refcard提供了Apache Hadoop,这是最流行的软件框架,可使用简单的高级编程模型实现大型数据集的分布式存储和处理.我们将介绍Hadoop最重要的概念,描述其架构,指导您如何开始使 ...

随机推荐

  1. 转 python 的常用函数replace, split(),enumerate() 函数

    1.execmd = "su - " + ou + " -c 'sqlplus / as sysdba << EOF\n " + execmd3 + ...

  2. 转 oracle cursor 游标

    转自:http://blog.csdn.net/liyong199012/article/details/8948952 游标的概念:     游标是SQL的一个内存工作区,由系统或用户以变量的形式定 ...

  3. 运行结果:Spring Bean的生命周期

    详见:http://www.cnblogs.com/zrtqsk/p/3735273.html https://blog.csdn.net/qq_23473123/article/details/76 ...

  4. [转]js判断url是否有效

    本文转自:http://www.cnblogs.com/fumj/p/3490121.html 方法一:(仅适用于ie) function CheckStatus(url) { XMLHTTP = n ...

  5. (转)CentOS下的trap命令

    trap命令用于指定在接收到信号后将要采取的动作.常见的用途是在脚本程序被中断时完成清理工作.不过,这次我遇到它,是因为客户有个需求:从终端访问服务器的用户,其登陆服务器后会自动运行某个命令,例如打开 ...

  6. python文件操作和集合(三)

    对文件的操作分三步: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句柄操作文件 3.关闭文件. 文件基本操作:         f = open('file.txt','r') #以 ...

  7. 安卓多个RecyclerView滑动与显示问题

    最近在项目遇到这样的问题:在一线性垂直布局内,有两个垂直的RecyclerView,如果直接高度直接设置wrap-content, 通常会导致滑动冲突或是内容显示不全. 首先说下解决的思路,就是在最外 ...

  8. 使用Aspose.Cell控件实现Excel高难度报表的生成

    1.使用Aspose.Cell控件实现Excel高难度报表的生成(一) http://www.cnblogs.com/wuhuacong/archive/2011/02/23/1962147.html ...

  9. 第一个flask程序

    flask简介: flask是一款非常流行的Python Web框架,出生于2010年,作者是Armin  Ronacher,本来这个项目只是作者在愚人节的一个玩笑,后来由于非常受欢迎,进而成为一个正 ...

  10. mysql 将null转代为0(转)

    1.如果为空返回0 select ifnull(null,0) 2.如果为空返回0,否则返回1 select if(isnull(col),0,1) as col. MYSQL 中的IFNULL函数 ...