hadoop特性讲解

1.Hadoop是什么?2.Hadoop能做什么?

这两个问题,我相信大家都比较的关心。那么我们就来聊聊它们。

首先,Hadoop是一个由Apache基金会所开发的分布式系统基础架构。

Hadoop是一个能够让用户轻松架构和使用的分布式计算平台。用户可以轻松地在Hadoop上开发和运行处理海量数据的应用程序。它主要有以下几个优点:

1.   高可靠性Hadoop按位存储和处理数据的能力值得人们信赖。

2.   高扩展性Hadoop是在可用的计算机集簇间分配数据并完成计算任务的,这些集簇可以方便地扩展到数以千计的节点中。

3.   高效性Hadoop能够在节点之间动态地移动数据,并保证各个节点的动态平衡,因此处理速度非常快。

4.   高容错性Hadoop能够自动保存数据的多个副本,并且能够自动将失败的任务重新分配。

5.   低成本。与一体机、商用数据仓库以及QlikViewYonghong Z-Suite等数据集市相比,hadoop是开源的,项目的软件成本因此会大大降低。

Hadoop带有用Java语言编写的框架,因此运行在 Linux 生产平台上是非常理想的。

其实我们要知道大数据的实质特性:针对增量中海量的结构化,非结构化,半结构数据,在这种情况下,如何快速反复计算挖掘出高效益的市场数据??带着这 个问题渗透到业务中去分析,就知道hadoop需要应用到什么业务场景了!!!如果关系型数据库都能应付的工作还需要hadoop吗?

关于hadoop,我映像比较深刻的是知乎中有人提到的一个“秒级营销”,什么是“秒级营销”呢?说白了就是:

1.通过大数据计算你的个人信息;

2.然后进行精准推送。

hadoop还能够做什么呢?

例如:

·        大数据量存储:分布式存储

·        日志处理: Hadoop擅长这个

·        海量计算: 并行计算

·        ETL:数据抽取到oracle、mysql、DB2、mongdb及主流数据库

·        使用HBase做数据分析: 用扩展性应对大量的写操作—Facebook构建了基于HBase的实时数据分析系统

·        搜索引擎:hadoop + lucene实现

·        数据挖掘:目前比较流行的广告推荐

·        大量地从文件中顺序读。HDFS对顺序读进行了优化,代价是对于随机的访问负载较高。

·        任何一台服务器都有可能失效,需要通过大量的数据复制使得性能不会受到大的影响。

·        个性化广告推荐



说了这么多,如果没有理解没有明白,没关系。我们挑其核心讲呗

Hadoop最核心的设计就是HDFSMapReduce

1.Hdfs提供海量的数据存储。

具体的可参看HDFS详解(个人推荐,该博客拥有比较多的文档支撑)

2.MapReduce提供了对数据的计算。

2.1MapReduce编程模型

MapReduce采用"分而治之"的思想,把对大规模数据集的操作,分发给一个主节点管理下的各个分节点共同完成,然后通过整合各个节点的中间结果,得到最终结果。简单地说,MapReduce就是"任务的分解与结果的汇总"。

在Hadoop中,用于执行MapReduce任务的机器角色有两个:一个是JobTracker;另一个是TaskTracker,JobTracker是用于调度工作的,TaskTracker是用于执行工作的。一个Hadoop集群中只有一台JobTracker。

在分布式计算中,MapReduce框架负责处理了并行编程中分布式存储、工作调度、负载均衡、容错均衡、容错处理以及网络通信等复杂问题,把处理过程高度抽象为两个函数:map和reduce,map负责把任务分解成多个任务,reduce负责把分解后多任务处理的结果汇总起来。

需要注意的是,用MapReduce来处理的数据集(或任务)必须具备这样的特点:待处理的数据集可以分解成许多小的数据集,而且每一个小数据集都可以完全并行地进行处理。

2.2MapReduce处理过程

在Hadoop中,每个MapReduce任务都被初始化为一个Job,每个Job又可以分为两种阶段:map阶段和reduce阶段。这两个阶段分别用两个函数表示,即map函数和reduce函数。map函数接收一个<key,value>形式的输入,然后同样产生一个<key,value>形式的中间输出,Hadoop函数接收一个如<key,(list of values)>形式的输入,然后对这个value集合进行处理,每个reduce产生0或1个输出,reduce的输出也是<key,value>形式的。

hadoop特性讲解

MapReduce处理大数据集的过程


经过这么一讲解,您是不是对hadoop有了新一步的认识呢?


你可能感兴趣的:(mapreduce,hadoop,hdfs,特性讲解,MapReduce处理过程)