处理海量数据的模式MapReduce,大规模数据集的并行运算

MapReduce是一种处理海量数据的并行编程模式,用于大规模数据集(通常大于1TB)的并行运算。

“Map(映射)”、“Reduce(化简)”的概念和主要思想,都是从函数式编程语言和矢量编程语言借鉴。

适合非结构化和结构化的海量数据的搜索、挖掘、分析与机器智能学习等。

MapReduce计算模型

分布式计算的瓶颈是网络带宽。“本地计算”是最有效的一种节约网络带宽的手段。

MapReduce的特点

1、输入的键值是不固定的,由分析人员选择

2、对于非结构化和半结构化数据,非常有效

3、适合于大规模数据的一次写入,多次查询

4、MapReduce其核心就是高速、流式读写操作

无共享

无共享结构让MapReduce程序员无需考虑系统的部分失效问题;

因为自身的系统实现,能够检测到失败的map或reduce任务;

并让正常的机器重新执行这些失败的任务;

因为各个任务之间彼此独立;

任务的执行顺序是无关紧要的;

MapReduce计算流程

MapReduce运行模型

Map函数——对一部分原始数据进行指定的操作。每个Map操作都针对不同的原始数据,因此Map与Map之间是互相独立的,这使得它们可以充分并行化。

Reduce操作——对每个Map所产生的一部分中间结果进行合并操作,每个Reduce所处理的Map中间结果是互不交叉的,所有Reduce产生的最终结果经过简单连接就形成了完整的结果集

数据分布存储,带来计算上的并行化:

MapReduce操作执行流程图

时间: 2024-12-18 22:47:24

处理海量数据的模式MapReduce,大规模数据集的并行运算的相关文章

MapReduce 气象数据集

通过MapReduce程序分析气象数据集,更好的了解计算过程. 环境:Hadoop 1.2.1 & Centos 6.5 x64 1.气象数据集准备 下载链接:ftp://ftp3.ncdc.noaa.gov/pub/data 完整数据集非常大,可以下载部分数据集作为日常实验数据. 2.气象数据上传到HDFS [huser@master 1971]$ ls 034700-99999-1971.gz 273730-99999-1971.gz 338850-99999-1971.gz 943290-

Tensorflow 大规模数据集训练方法

本文转自:Tensorflow]超大规模数据集解决方案:通过线程来预取 原文地址:https://blog.csdn.net/mao_xiao_feng/article/details/73991787 现在让我们用Tensorflow实现一个具体的Input pipeline,我们使用CoCo2014作为处理对象,网上应该可以下载到CoCo训练集,train2014这个文件.下载链接: http://msvocds.blob.core.windows.net/coco2014/train201

最新云计算模拟题

1. 云计算是对( D )技术的发展与运用 A. 并行计算 B网格计算 C分布式计算 D三个选项都是 2. IBM在2007年11月退出了"改进游戏规则"的( A )计算平台,为客户带来即买即用的云计 算平台. A. 蓝云 B. 蓝天 C. ARUZE D. EC2 3. 微软于2008年10月推出云计算操作系统是( C ) A. Google App Engine B. 蓝云 C. Azure D. EC2 4. 2008年,( A )先后在无锡和北京建立了两个云计算中心 A. IB

数据挖掘面试笔试(4)

超全数据挖掘面试笔试题(附答案) 2017年09月18日 20:31:35 SZU_ZNG 阅读数:24700 一.单选题(共80题) ( D )的目的缩小数据的取值范围,使其更适合于数据挖掘算法的需要,并且能够得到和原始数据相同的分析结果. A.数据清洗       B.数据集成 C.数据变换       D.数据归约 某超市研究销售纪录数据后发现,买啤酒的人很大概率也会购买尿布,这种属于数据挖掘的哪类问题?(A)   A. 关联规则发现       B. 聚类   C. 分类        

每天收获一点点------Hadoop基本介绍与安装配置

一.Hadoop的发展历史 说到Hadoop的起源,不得不说到一个传奇的IT公司—全球IT技术的引领者Google.Google(自称)为云计算概念的提出者,在自身多年的搜索引擎业务中构建了突破性的GFS(Google File System),从此文件系统进入分布式时代.除此之外,Google在GFS上如何快速分析和处理数据方面开创了MapReduce并行计算框架,让以往的高端服务器计算变为廉价的x86集群计算,也让许多互联网公司能够从IOE(IBM小型机.Oracle数据库以及EMC存储)中

非结构化数据的存储与查询

当今信息化时代充斥着大量的数据.海量数据存储是一个必然的趋势.然而数据如何的存储和查询,尤其是当今非结构化数据的快速增长,对其数据的存储,处理,查询.使得如今的 关系数据库存储带来了巨大的挑战.分布存储技术是云计算的基础,主要研究如何存储.组织和管理数据中心上的大规模海量数据.由于面临的数据规模和用户规模更加庞大,在可扩展性.容错性以及成本控制方面面临着更加严峻的挑战[1]. 对于大量的半结构化数据(semi-structure data)和非结构化数据,对其存储和并发计算以及扩展能力而设计出了

大数据基础和hadoop

一.大数据的特点 大数据是什么?其实很简单,大数据其实就是海量资料巨量资料,这些巨量资料来源于世界各地随时产生的数据,在大数据时代,任何微小的数据都可能产生不可思议的价值.大数据有4个特点,为别为:Volume(大量).Variety(多样).Velocity(高速).Value(价值),一般我们称之为4V. 所谓4V,具体指如下4点: 1.大量.大数据的特征首先就体现为“大”,从先Map3时代,一个小小的MB级别的Map3就可以满足很多人的需求,然而随着时间的推移,存储单位从过去的GB到TB,

八种Nosql数据库系统对比

文章来源:http://article.yeeyan.org/view/271351/239915 尽管SQL数据库是非常有用的工具,但经历了15年的一支独秀之后垄断即将被打破.这只是时间问题:被迫使用关系数据库,但最终发现不能适应需求的情况不胜枚举. 但是NoSQL数据库之间的不同,远超过两个 SQL数据库之间的差别.这意味着软件架构师更应该在项目开始时就选择好一个适合的 NoSQL数据库. 针对这种情况,这里对 Cassandra. Mongodb.CouchDB.Redis. Riak.M

一、什么是Hadoop?

Hadoop是Apache下的一个开源分布式计算平台.以Hadoop分布式文件系统(HDFS,Hadoop Distributed Filesystem)和MapReduce(Google MapReduce的开源实现)为核心的Hadoop为用户提供了系统底层细节透明的分布式基础结构. Hadoop包含HDFS,MapReduce,Pig,ZooKeeper等子项目的集合,用于分布式计算 二.为什么要用Hadoop? 由于现在信息量速度增长快.信息里又积累着大量的数据,包括个人数据和工业数据.每