关于云计算的海量数据存储模型

0 引言
随着越来越多的人使用计算机,整个网络会产生数量巨大的数据,如何存储网络中产生的这些海量数据,已经是一个摆在面前亟待解决的问题。现
在常见的三种存储方式是DAS[1]、NAS 和SAN,但是面对网络产生的越来越多的数据,这三种方式的缺点就明显的暴露出来。DAS 存储方式可扩
展性差,系统性能低,存储分散。NAS 虽然使用方便,成本低廉,但最是存储性能差。SAN 存储效能优异,能大幅提升网络上工作效能与资料传
输效率,但是其架构为封闭式架构,无法整合不同系统,且规模过大成本较高。
2006 年底,Google 第一次提出了“云[2]”的概念,为我们更好的处理网络中产生的海量数据带来了希望。
本文提出的基于云计算的海量数据存储模型,是依据云计算的核心计算模式MapReduce[3],并依托实现了MapReduce 计算模式的开源分布式并
行编程框架Hadoop[3],将存储模型和云计算结合在一起,实现海量数据的分布式存储[4]。
1 云计算
云计算[5]是一种计算模式,也是一种全新的商业模式。云计算(Cloud Computing)是分布式处理(Distributed Computing)、并行处理
(Parallel Computing)和网格计算(GridComputing)的发展或者说是这些计算机科学概念的商业实现。
云计算[6]是随着网络中产生的越来越多的数据而被提出的,在云计算中,无数的软件和服务都置于云中,这里的云是指可以自我维护和管理的虚
拟计算资源。这些软件和服务均构筑于各种标准和协议之上,可以通过各种设备来获得。
云计算是一种超级的计算模式,可以把网络中的计算机虚拟为一个资源池,将所有的计算资源集中起来,并用特定软件实现自动管理,使得各种计
算资源可以协同工作,这就使得处理数量巨大的数据成为了可能。
2 一级标题基于云计算的海量数据的存储
2.1 MapReduce 模式
MapReduce 是云计算的核心计算模式,是一种分布式运算技术,也是简化的分布式编程模式,用于解决问题的程序开发模型,也是开发人员拆解
问题的方法。
MapReduce 模式的主要思想是将自动分割要执行的问题(例如程序),拆解成Map(映射)和Reduce(化简)的方式。MapReduce 的流程所
示:
在数据被分割后通过Map 函数的程序将数据映射成不同的区块,分配给计算机机群处理达到分布式运算的效果,在通过Reduce 函数的程序将结果
汇整,从而输出开发者需要的结果。
MapReduce 借鉴了函数式程序设计语言的设计思想,其软件实现是指定一个Map 函数,把键值对(key/value)映射成新的键值对(key/value),形成
一系列中间结果形式的key/value 对,然后把它们传给Reduce(规约)函数,把具有相同中间形式key 的value 合并在一起。Map 和Reduce 函数具
有一定的关联性。函数描述所示:

附件:

附件图标关于云计算的海量数据存储模型.pdf (179.63 KB)

参与0

0同行回答

“答”则兼济天下,请您为题主分忧!

提问者

anyfeng
软件开发工程师某零售企业
擅长领域: 数据库存储服务器

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2014-10-08
  • 关注会员:0 人
  • 问题浏览:1566
  • X社区推广