`

ma-云计算 大数据 mapreduce概念和关系

 
阅读更多

 

 

0 云计算:

 

什么是云计算?针对这个问题,恐怕十个专家会给出十一个互不相同的答案,而事实上也有无数的文章从各个角度试图给出一个简单而确切的定义。
在最肤浅的级别上来说,原来基于web 2.0技术开发的曾被称作web应用程序的都可摇身一变称自己为“云程序”,
因为任何运行于浏览器中收集并存储用户相关内容的应用都的确可以作为云程序的应用范例,
比如以Facebook为代表的社交站点、以内容分享为代表的YouTube、基于Web的邮件服务Gmail以及诸如Google Docs类的应用程序。
在这种层面上,“云”指的是运行了这些站点的主机群。诸如此类的应用,每种都会随着用户数据的日积月累进而带来“大数据”问题。
(视频  图片  文本)

云计算的另一个重要表现是效用计算,即将计算资源本身当作一种可计量的服务,就像电或者水一样。这种模型中,用户只需要向“云供应商”购买实际需要的计算能力即可,
实际应用中,这是通过向用户提供运行了某操作系统的虚拟机来实现的,即云供应商使用虚拟化技术在用户之间分配计算资源。
用户对其拥有的虚拟机具有完全使用权限,而其使用结束后,只需要“销毁”此虚拟机就能释放其原来占用的资源。

站在效用计算提供商的角度来看,这种模型中运营较大规模的数据中心的收益也会优于小规模的数据中心。
目前,虽然有越来越多企业或组织加入,但Amazon Web服务仍是此种应用领域的领头羊和主导者。而相关应用的开源解决方案Eucalyptus也正越来越引起人们的兴趣。
效用计算模型的实际应用是通过向用户提供虚拟机实例来完成的,用户通过此虚拟机来访问服务,这即是所谓的“基础架构即服务(IaaS)”。
然而,这对许多用户来说都过于“底层”了,于是就有了“平台即服务(PaaS)。PaaS通常指的是一些事先定义好的服务的集合,基于这些服务,
用记可以创建应用程序或部署数据等。Google App Engine是此类应用中其最出色的代表,它为用户提供了后台存储及构建高可扩展性web应用程序的API。
而其基础架构部分则由Google进行维护,从而让用户从备份、升级、打补丁甚至是提供存储和编程环境等繁琐的日常管理任务中解脱出来。
PaaS仍需要用户自己根据实际需要构建应用程序,对于不具有程序研发能力的公司来说,他们需要的是更为高层次一些的服务,“软件即服务(SaaS)”则应运而生。
SaaS将某种具体的应用软件以“云服务”的方式通过浏览器向用户提供,其著名的代表有Salesforce提供的CRM软件。

云计算: 将计算资源量化成水,电来出售
IaaS: 基础即服务,代表者 Amazon 虚拟机  阿里云
Pass: 应用程序即服务 代表者 Google App Engine
Saas: 具体应用软件即服务 代表者 Salesforce提供的CRM软件

 

 

1 大数据:

 

定义:庞大复杂(半结构化 非结构化)数据集,很难用数据管理工具和传统数据处理程序进行处理操作。
案例: 社交网络,web服务器日志,流量传感器,卫星传回的影像,银行交易信息,web页面内容,GPS轨迹信息,遥感汽车车行记录,金融市场数据等
规模:2008年,Google每天需要处理的数据量为20PB;2009年,Facebook有2.5PB的用户数据,且以每天15TB的速度增长;
	  eBay有6.5PB的用户数据,且以每天50TB的速度增长;2011年,Yahoo!共有180到200PB的数据;

属性:volume(数据大小),veloicy(变化频度),varity(数据源) 使用这三个属性,有助于理解数据自然特征 评估软件平台存储 平台处理数据能力

 

属性关系图:



 

 

 

 

 

大数据存在的价值: 根据实际需求进行处理后才能成为有用的信息,从而完成更深层次的、更为完整的商业解析,并实现结果的可视化。

 

 

2 大数据map-reduce框架解决的问题和带来的便利:

 

(1) 向外扩展(Scale out)而非向上扩展(Scale up): 
	向外:横向增加低端服务器个数
	向上:变更成高端服务器
(2)假设故障很常见	
	假设一款服务器出故障的平均概率为1000天1次,那么10000台这种服务器每天出错的可能性将达到10次,、
	因此,大规模向外扩展的应用场景中,一个设计优良且具有容错能力的服务必须能有效克服非常普遍的硬件故障所带来的问题,即故障不能导致用户应用层面的不一致性或非确定性。
	MapReduce编程模型能通过一系列机制如任务自动重启等健壮地应付系统或硬件故障。
(3)将处理程序移向数据
	传统高性能计算应用中,超级计算机一般有着处理节点(processing node)和存储节点(storage node)两种角色,它们通过高容量的设备完成互联。然而,大多数数据密集型的处理工作并不需要多么强大的处理能力,于是把计算与存储互相分开将使得网络成为系统性能瓶颈。
	为了克服计算如此类的问题,MapReduce在其架构中将计算和存储合并在了一起,并将数据处理工作直接放在数据存储的位置完成,只不过这需要分布式文件系统予以支撑。

(4)顺序处理数据并避免随机访问
	大数据处理通常意味着海量的数量难以全部载入内存,因而必须存储在磁盘上。然而,机械式磁盘寻道操作的先天性缺陷使得随机数据访问成为非常昂贵的操作,
	因此避免随机数据访问并以顺序处理为目的完成数据组织成为亟待之需。固态磁盘虽然避免了机械磁盘的某此缺陷,
	然而其高昂的价格以及并没有消除的随机访问问题仍然无法带来性能上的飞跃发展。
	MapReduce则主要设计用来在海量数据集上完成批处理操作,即所有的计算被组织成较长的流式处理操作,以延迟换取较大的吞吐能力。
(5)隐藏系统级别的细节
	程序开发中,专业程序员公认的难题之一就是得同步追踪短期记忆的各种细节,简单如变量名,复杂如算法等;这会生较大的记忆负荷因为其需要程序员在开发过程中高度集中注意力,
	因此,后来才出现了各种各样的开发环境(IDE)以帮助程序员在一定程度上解决诸如此类的问题。开发分布式程序的过程更为复杂,程序员必须协调管理多个线程、进程甚至是主机之间的各种细节,
	而这其中,令人最为头疼的问题是分布式程序以无法预知的次序运行,以及以无法预知的模式进行数据访问。这必然大大增加竞争条件、死锁及其它臭名照著的问题出现的可能性。
	传统上,解决此类问题的办法无外乎使用底层设备如互斥量,并在高层应用类似“生产者-消费者”队列的设计模式等;
	但基于这种方式设计的分布式程序极难理解并且很难进行调试。MapReduce编程模型通过为其内部少量的几个组件提供了一个简单且精心定义的接口,从而将程序员与系统底层的处理细节隔离开来。
	MapReduce实现了“运算什么”与“如何在多个节点并行运算”的隔离,前者可以程序员控制,后者则完全由MapReduce编程框架或运行时环境控制。
(6)无缝扩展
	数据密集型的处理应用中扩展算法(scalable algorithm)是其核心要件。一个理想的扩展算法应该满足两种特性:数据扩展一倍时其处理时长的增长幅度不会越过原处理所需时长的一倍;其次,集群规模扩大一倍时,其处理时长降低至少一倍。
	进一步地,理想的扩展算法还应该能够处理种种规模如PB级别的数据,以及良好地运行于各种规模如数千节点的集群中,
	而且其无论运行时何种规模的集群、处理何种规模的数据,其程序并不需要做出修改,甚至连配置参数也不需要改动。然而,现实是残酷地,这种理想算法并不存在,
	Fred Brook在其经典的“人月神话”中有一个断言:为落后于预定计划的项目增加程序员只会让项目的完成时间进一步延后。这是因为并不能通过简单地将复杂任务切分为多个小任务并将其分配出去并行完成来获得线性扩展,
	也即是“一个妇女可以在10个月生出孩子,但十个妇女并不能在一个月内生出孩子来”。然而,这个断言于今至少在某此领域已经被MapReduce打破——MapReduce最激动人心的特性之一就是其处理能力随着节点的增加而线性增长,即集群规模增长N倍其处理相同规模数据的时长也会缩短N倍。
	

 

 

  • 大小: 48.2 KB
分享到:
评论

相关推荐

    首届大数据应用论坛-云计算与大数据

    本次论坛旨在探讨云计算与大数据的核心概念、关键技术及其在不同行业中的应用案例。 #### 二、云计算与大数据概述 **1. 云计算定义** - 云计算是一种基于互联网的计算模式,通过网络提供动态可扩展的计算资源和...

    云计算导论-习题答案-第六章-云计算与大数据(答案).docx

    云计算导论-习题答案-第六章-云计算与大数据 大数据是指无法在一定时间内通过常用的软件工具...大数据的发展对云计算和大数据产业的影响是深远的。我们需要加强大数据的安全和隐私保护,推动大数据产业的健康发展。

    云计算基础-云计算与大数据.pdf

    在数字化转型的浪潮中,云计算与大数据作为信息技术领域的核心概念,二者...未来,随着新技术的不断涌现,云计算和大数据的应用领域将会更加广泛,它们将继续作为信息技术领域的两大支柱,引领着数字化转型的深入发展。

    云计算与大数据 MapReduce实验 WordCount.jar

    云计算与大数据 MapReduce实验 Wordcount实验中所需数据包 WordCount.jar 不需要封装,centos7 linux hadoop实验上传所需

    Hadoop 3.x(MapReduce)----【MapReduce 概述】---- 代码

    Hadoop 3.x(MapReduce)----【MapReduce 概述】---- 代码 Hadoop 3.x(MapReduce)----【MapReduce 概述】---- 代码 Hadoop 3.x(MapReduce)----【MapReduce 概述】---- 代码 Hadoop 3.x(MapReduce)----...

    云计算和大数据现状及趋势分析

    ### 云计算和大数据现状及趋势分析 #### 一、引言 随着信息技术的快速发展,云计算与大数据已成为推动社会进步的关键力量。本篇文章旨在探讨当前云计算和大数据的技术现状、发展趋势及其对中国乃至全球信息技术产业...

    云计算 大数据的面试题,百度,腾讯,阿里都用到过

    在当前的IT行业中,云计算和大数据是两个至关重要的领域,对于技术人才的需求也日益增长。这份"云计算 大数据的面试题"集合可能是百度、腾讯、阿里等知名互联网企业曾经使用过的面试题目,旨在测试候选人在这些领域...

    厦门大学林子雨老师主讲大数据教程.rar

    Chapter7--大数据技术原理与应用-第7讲-MapReduce.pdf Chapter8--大数据技术原理与应用-第8讲-基于Hadoop的数据仓库Hive.pdf Chapter9--大数据技术原理与应用-第9讲-Hadoop再探讨.pdf Chapter10--大数据技术原理与...

    2017零基础学云计算大数据视频教程hadoop storm kafka spark开发

    本套视频教程主要针对2017年时的云计算与大数据技术进行讲解,重点涵盖了Hadoop、...通过系统学习,你不仅可以掌握大数据的基本概念和技术,还能了解如何将它们应用于实际的云计算环境中,为你的职业生涯开启新的可能。

    第1章-云计算与大数据基础87.pptx

    【云计算与大数据基础】\n\n云计算和大数据是信息技术领域中的两大重要概念,它们相互交织,共同推动着信息产业的革新。《云计算与大数据技术》一书深入浅出地介绍了这两个领域的基础知识。\n\n1.1 云计算技术概述\n...

    云计算大数据实战自学

    在当今的数字化时代,云计算和大数据已成为信息技术领域的两大核心概念,它们改变了我们处理、存储和分析数据的方式。本文将深入探讨“云计算大数据实战自学”的关键知识点,帮助你在这个快速发展的领域建立坚实的...

    GZ-2022041 大数据技术与应用赛项赛题.zip

    总的来说,"GZ-2022041 大数据技术与应用赛项赛题"是一项综合性的比赛,它涵盖了大数据领域的核心技术和实际应用,对提升学生的专业技能具有重要意义。参赛者应全方面提升自己,以应对这个挑战,展示他们在大数据...

    云计算大数据对制冷设备空调的控制.pdf

    随着云计算和大数据技术的不断发展与应用,其在建筑智能化系统中的作用越来越显著,尤其是在制冷设备空调系统中的智能控制方面。本文探讨了云计算大数据如何通过对海量数据的分析,实现对制冷设备空调的智能化控制,...

    云计算大数据实验室建设项目解决方案.docx

    云计算和大数据作为信息技术的两大支柱,它们之间存在着密切的关系。云计算提供了处理和存储大数据所需的基础设施和技术支持,而大数据则为云计算提供了丰富的应用场景和价值体现。两者相辅相成,共同推动了信息技术...

    云计算与大数据技术研究现状.pdf

    大数据的概念最早在2008年由奥地利数据科学家维克托·迈尔-舍恩伯格提出,并迅速得到学术界和工业界的广泛关注。 大数据的基本特征通常被总结为“4V”:首先是大量(Volume),数据量巨大,通常超过传统数据库技术...

    南邮 云计算与大数据 课件

    总的来说,这门“云计算与大数据”课程旨在培养学生的综合能力,包括理论分析、实践操作和技术应用,以适应信息化社会对云计算和大数据专业人才的需求。通过学习这门课,学生不仅能掌握云计算和大数据的核心技术,还...

    云计算大数据

    云计算大数据是信息技术领域的一个重要概念,它涉及到海量数据的存储、处理和分析。在这个主题下,离线计算扮演着至关重要的角色。离线计算,也称为批量计算或批处理计算,是在非实时环境下进行的大规模数据处理,...

    大数据Mapreduce实验

    大数据Mapreduce实验

    课后作业答案云计算与大数据.pdf

    云计算与大数据处理是当今最热门的技术领域之一,本文档涵盖了云计算的定义、特点、优点、应用场景及潜在危险性等内容,同时也涉及到大数据处理的相关概念和技术。 一、云计算的定义和特点 云计算是指通过网络提供...

    云计算大数据架构模式与实践.docx

    在当前的数字化时代,云计算和大数据已成为企业信息技术领域不可或缺的部分。云计算提供了强大的计算能力和存储空间,而大数据则帮助企业从海量数据中挖掘出价值。本文将深入探讨云计算大数据架构的模式和实践经验,...

Global site tag (gtag.js) - Google Analytics