Hadoop 的核心:Mapreduce思想说明

Mapreduce思想

1. 就是做一个计算,如果计算过程中如果数据传输消耗的资源大于计算消耗的资源,考虑在计算过程中,将算法(程序),移动到数据存放的服务器中,再进行计算。

2. 在做一个巨型计算时,利用多台(例如 2000 )台服务器的 cpu 和内存同时计算。

算法描述

第一种方式描述

将计算要用的数据切分,放在各个服务器上,然后将计算程序分发到各个服务器,计算出各个部分的结果。最后将各个计算结果合并。

第二种方式描述

另外一种描述为, MapReduce 的名字源于这个模型中的两项核心操作: Map 和 Reduce 。也许熟悉
Functional Programming (函数式编程)的人见到这两个词会倍感亲切。简单的说来, Map
是把一组数据一对一的映射为另外的一组数据,其映射的规则由一个函数来指定,比如对 [1, 2, 3, 4] 进行乘 2 的映射就变成了 [2,
4, 6, 8] 。 Reduce 是对一组数据进行归约,这个归约的规则由一个函数指定,比如对 [1, 2, 3, 4]
进行求和的归约得到结果是 10 ,而对它进行求积的归约结果是 24

总的来说算法必须可以切分,包含小列步骤。

切分、分别计算、合并。

最典型的是大规模日志计算。

时间: 2024-11-23 23:56:17

Hadoop 的核心:Mapreduce思想说明的相关文章

hadoop的核心思想【转】

[转自]:http://www.superwu.cn/2014/01/10/963/ 1.1.1. hadoop的核心思想 Hadoop包括两大核心,分布式存储系统和分布式计算系统. 1.1.1.1. 分布式存储 为什么数据需要存储在分布式的系统中哪,难道单一的计算机存储不了吗,难道现在的几个TB的硬盘装不下这些数据吗?事实上,确实装不下.比如,很多的电信通话记录就存储在很多台服务器的很多硬盘中.那么,要处理这么多数据,必须从一台一台服务器分别读取数据和写入数据,太麻烦了! 我们希望有一种文件系

Hadoop(四)——编程核心MapReduce(上)

上篇讲述了Hadoop的核心内容之一HDFS,是Hadoop分布式的平台基础,而这讲的MapReduce则是充分利用Hdfs分布式,提高运行效率的算法模型 ,Map(映射)和Reduce(归约)两个主要阶段都以<key,value>键值对作为输入和输出,我们需要做的就是对这些<key,value>做我们想要的处理.看似简单实则麻烦,因为这里太灵活多变. 一,好,首先来看下边两个图,看下mapreduce在Hadoop中的执行流程,以及mapreduce内部的执行流程: 以分析气象数

MapReduce的核心编程思想

1.MapReduce的核心编程思想 2.yarn集群工作机制 3.maptask并行度与决定机制 4.maptask工作机制 原文地址:https://www.cnblogs.com/areyouready/p/9853445.html

从Hadoop框架与MapReduce模式中谈海量数据处理(含淘宝技术架构)

从hadoop框架与MapReduce模式中谈海量数据处理 前言 几周前,当我最初听到,以致后来初次接触Hadoop与MapReduce这两个东西,我便稍显兴奋,认为它们非常是神奇,而神奇的东西常能勾起我的兴趣,在看过介绍它们的文章或论文之后,认为Hadoop是一项富有趣味和挑战性的技术,且它还牵扯到了一个我更加感兴趣的话题:海量数据处理. 由此,近期凡是空暇时,便在看"Hadoop","MapReduce""海量数据处理"这方面的论文.但在看论

【Big Data - Hadoop - MapReduce】初学Hadoop之图解MapReduce与WordCount示例分析

Hadoop的框架最核心的设计就是:HDFS和MapReduce.HDFS为海量的数据提供了存储,MapReduce则为海量的数据提供了计算. HDFS是Google File System(GFS)的开源实现. MapReduce是Google MapReduce的开源实现. HDFS和MapReduce实现是完全分离的,并不是没有HDFS就不能MapReduce运算. 本文主要参考了以下三篇博客学习整理而成. 1. Hadoop示例程序WordCount详解及实例 2. hadoop 学习笔

每天收获一点点------Hadoop之初始MapReduce

一.神马是高大上的MapReduce MapReduce是Google的一项重要技术,它首先是一个编程模型,用以进行大数据量的计算.对于大数据量的计算,通常采用的处理手法就是并行计算.但对许多开发者来说,自己完完全全实现一个并行计算程序难度太大,而MapReduce就是一种简化并行计算的编程模型,它使得那些没有多有多少并行计算经验的开发人员也可以开发并行应用程序.这也就是MapReduce的价值所在,通过简化编程模型,降低了开发并行应用的入门门槛. 1.1 MapReduce是什么 Hadoop

hadoop之魂--mapreduce计算框架,让收集的数据产生价值 (第4篇)

  通过前面的学习,大家已经了解了HDFS文件系统.有了数据,下一步就要分析计算这些数据,产生价值.接下来我们介绍Mapreduce计算框架,学习数据是怎样被利用的. Mapreduce计算框架 如果将Hadoop比做一头大象,那么MapReduce就是那头大象的电脑.MapReduce是Hadoop核心编程模型.在Hadoop中,数据处理核心就是MapReduce程序设计模型. 本章内容: 1) MapReduce编程模型 2) MapReduce执行流程 3) MapReduce数据本地化

初学Hadoop之图解MapReduce与WordCount示例分析

Hadoop的框架最核心的设计就是:HDFS和MapReduce.HDFS为海量的数据提供了存储,MapReduce则为海量的数据提供了计算. HDFS是Google File System(GFS)的开源实现,MapReduce是Google MapReduce的开源实现. HDFS和MapReduce实现是完全分离的,并不是没有HDFS就不能MapReduce运算. 本文主要参考了以下三篇博客学习整理而成. 1.Hadoop示例程序WordCount详解及实例 2.hadoop 学习笔记:m

YARN Apache Hadoop 的下一代MapReduce

之前自己做的hadoop项目是基于0.20.2版本的,查了一下资料,知道了自己以前学的是原map/reduce模型. 官方说明: 1.1.X - current stable version, 1.1 release 1.2.X - current beta version, 1.2 release 2.X.X - current alpha version 0.23.X - simmilar to 2.X.X but missing NN HA. 0.22.X - does not inclu