APP下载

云计算技术的关键问题及在图书馆的应用

2013-04-11景红霞

上海高校图书情报工作研究 2013年3期
关键词:数据管理虚拟化编程

景红霞

(甘肃省图书馆 兰州 730000)

1 云计算关键技术

云计算的理念体现了互联网时代的信息服务特性,正在推动一系列技术创新去解决互联网平台服务的生命周期管理问题,大规模分布式计算、存储、通信问题以及资源按需提供、按量收费问题。云计算在虚拟化、数据存储、数据管理、编程模式等方面具有自身独特的技术[1]。

1.1 数据存储技术

云计算系统需要同时满足大量用户需求,并行地为他们提供服务,云计算数据存储技术必须具有高吞吐率和高传输率的特点。为保证高可用、高可靠和经济性,云计算采用分布式存储的方式来存储数据,采用冗余存储的方式来保证存储数据可靠性。云计算数据存储技术主要有谷歌的非开源GFS和Hadoop开发团队开发的GFS开源实现HDFS。大部分IT厂商,包括雅虎、英特尔的云计算计划采用的都是HDFS数据存储技术。云计算数据存储技术未来发展将集中在超大规模数据存储、数据加密和安全性保证以及继续提高I/O速率等方面。

1.2 数据管理技术

云计算数据管理技术解决如何高效地管理大数据集,如何在规模巨大的数据中找到特定数据。云计算的特点是对海量数据存储、读取后进行大量的分析,数据的读操作频率远大于数据更新频率,云计算数据管理是一种读优化的数据管理。它采用数据库领域中列存储数据管理模式。云计算数据管理技术中最著名的是谷歌BigTable数据管理技术。由于采用列存储方式管理数据,如何提高数据更新速率和随机读速率是未来数据管理技术必须解决的问题。

1.3 编程模型

云计算的编程模型必须能让用户利用编程模型编写简单程序实现特定目的,保证后台复杂并行执行和任务调度向用户和编程人员透明。现在大部分IT厂商提出的云计算计划中采用的编程模型,都是基于Map-Reduce思想开发的编程工具。Map-Reduce是一种编程模型及高效的任务调度模型。该编程模式仅适用于编写任务内部松耦合、能高度并行化的程序。如何改进该编程模式,使程序员能轻松地编写紧耦合程序,运行时能高效地调度和执行任务,是Map-Reduce编程模型未来发展方向。

1.4 虚拟化技术

虚拟化是对资源的逻辑表示,且不受物理限制约束。其资源可以是硬件资源,如CPU、内存、硬盘、网络等,也可以是软件环境,如操作系统、文件系统、应用程序等。虚拟化主要目标是对包括基础设施、系统和软件等IT资源的表示、访问和管理进行简化,并为这些资源提供标准接口来接收输入和提供输出。虚拟化技术是云计算最核心的技术,它基于使用软硬件划分、分时服务、模拟与仿真执行等技术,达到在单个计算机物理设备上模拟出多个相互隔离的硬件执行环境,并确保在虚拟出的环境中操作系统与应用运行情况与在真实物理设备上运行情况基本相同。虚拟化的使用者可以是最终用户、应用程序或是服务。虚拟化技术降低了资源使用者与资源具体实现之间耦合程度,使用者不再依赖资源的某种特定实现。虚拟化技术的产品有VmwareThinApp、CitrixXenApp和MicrosoftApp-V等。

虚拟化技术随云计算的发展不断更新,功能强大的同时其安全漏洞也随之增加。解决服务器虚拟化安全问题的关键在于虚拟机监控器(VMM)的设计和配置,通过良好的接口定义、资源分配策略和严格的访问策略能显著提升服务器虚拟化环境安全。

1.5 云计算平台管理技术

云计算资源规模庞大,一个系统的服务器数量会高达十万台并跨越几个坐落于不同物理地点的数据中心,同时运行成百上千种应用。如何有效地管理这些服务器,保证它们组成的系统能提供7×24小时不间断服务?云计算系统的平台管理技术是云计算的“神经网络”,通过该技术能使大量的服务器协同工作,方便地进行业务部署和开通,快速发现和恢复系统故障,通过自动化、智能化手段实现大规模系统的可运营、可管理。Google通过其卓越的云计算平台管理系统维持着全球上百万台PC服务器协同、高效地运行[2]。

2 云计算发展十大问题

从2007年云计算在全球“红火”开始,云计算的发展面临着一系列问题。如何更好地克服这些问题,是未来云计算发展的方向[3]:

(1)服务可用性。合乎情理地提供极高可用性服务的解决方案就是多云计算提供商,还有DDoS攻击。由于弹性,云计算将攻击目标从SaaS提供商转移到能马上吸引攻击并且具有DDoS攻击保护能力的效用计算机提供商。

(2)数据丢失。从本质上说云计算的AP仍是私有的,或者说当前没建立统一的标准。只有将云计算AP标准化,这样SaaS开发人员就能在多个云计算提供商处发布服务和数据,某个公司的失误或故障将不影响用户数据的每个拷贝。

(3)数据安全性和可审计性。云计算数据安全性一直令人担忧,一些敏感数据将不会放到“云”中。“云”从本质上来说是提供了公共网络,会遭受更多攻击。可审计性也很重要,按照《萨班斯法案》和《健康保险携带和责任法案》等相关法律规定,企业提交到“云”中的数据必须满足审计需求。当然,灵活运用加密存储、虚拟局域网、网络中间件(如防火墙,包过滤)等技术能解决一些问题。

(4)数据传输瓶颈。当前应用发展越来越趋于数据密集型,如果应用能被拆分交由不同“云”去处理,这将导致复杂的数据存放和传输。快递硬盘是克服这样高互联网传输成本问题的一种方法。一旦数据存放在“云”中,数据传输将不再是瓶颈,这不仅会催生其他一些利用“云”计算能力的新服务,还能快速降低广域网宽带的成本。此外,“云”内网络技术也可能是一个性能瓶颈。

(5)性能不可预知性。在云计算中多虚拟机能很好地共享CPU和内存,但I/O的共享却有明显的问题。通过改进体系结构和操作系统以获得更有效率的虚拟中断和I/O通道。闪存能降低I/O冲突,闪存相比硬盘能支持更多单位时间内I/O操作,有着随机I/O访问冲突的多虚拟机能很好地协同工作。另外,为云计算提供有效资源调度和管理工具可克服运行某些批处理程序时多个虚拟机调度问题。

(6)可伸缩存储。针对这个问题有许多不同尝试:提供丰富查询、存储API提供性能保证、由存储系统支持数据结构。通过创建具备上述功能的存储系统,而且提供向上和向下的伸缩性支持,同时在可扩展性、数据持久性以及高可用性等数据管理方面满足程序员需求。

(7)大规模分布式系统中的错误。云计算中一个很大的挑战是从大规模分布式系统中去消除错误。问题是这些bug不会在稍小规模的配置中重现,调试必须在生产环境中进行。云计算中的虚拟机可能使程序员获得一些有价值信息。

(8)快速伸缩。即用即付无疑很适合存储和网络带宽,这都可用使用字节数来衡量。由于使用虚拟机,计算稍有不同。如何在不违背使用协议的前提下实现根据负载自动、快速地调整计算规模以最大地节省费用,是亟待解决的问题。

(9)声誉和法律危机。一个用户的恶意操作会影响到整个“云”的声誉。创建类似于信任邮件服务那样的声誉保护服务将成为可能。还有,法律责任转移:当出现问题时,云计算提供商将会希望由用户去承担相应的法律责任。

(10)软件许可。当前软件许可证通常限定在运行软件的机器上。用户购买软件并按年支付维护费用。许多云计算提供商从一开始就倾向于开源软件,部分是因为商业软件许可证模式并不适合效用计算。要么开源持续流行,要么商业软件公司改变他们许可证结构,让其更加适合云计算,还有鼓励软件公司制定销售政策来向云计算提供产品。

3 云计算在图书馆的应用[4]

3.1 云计算在国外图书馆的应用

国外图书馆在云计算技术应用方面领先国内图书馆十年。Koha,是第一个开放源代码的图书馆自动化系统,产生于1999年。它是在LibLime的云计算平台上的全功能集成图书馆系统(ILS),通过SaaS方式分发,含软件安装及托管。此产品的目标客户是小型公共图书馆、学校及专业图书馆[5]。

2006年8月Amazon推出弹性计算云EC2服务,它为不同的组织机构提供IT基础服务,包括存储服务和计算资源服务。EC2可为Linux、Windows等几种不同的操作系统用户提供云服务。目前租用亚马逊云计算服务来处理自己业务的用户超过37万,哥伦比亚区公共图书馆正使用亚马逊弹性计算云服务托管它们的网站,并使用亚马逊的简单存储服务(S3)备份图书馆集成系统。OhioLINK图书馆联盟也在使用Amazon's Web Services托管一小部分它们的数字公共资源,2008年4月,Google发布的AppEngine服务允许本地使用Google基础设施构建Web应用。东肯塔基大学图书馆使用Google Does收集网站表格的回复,把Google日历当作培训和会议的日历,用Google AnaIytics来收集网站、图书馆目录及博客的数据。科罗拉多州甘尼森的东部州立大学利用AppEngine建设ELi-brary供师生使用。

2009年7月14日,美国国会图书馆国家数字信息基础设施与保存项目(NDIIPP)与DuraSpace公司宣布,他们将联手发起一个为期一年的试验计划,检验利用云技术进行数字内容永久存取的情况。在NDIIPP项目成员中参与此计划的有纽约公共图书馆和生物多样性历史文献图书馆。

业界最有影响的莫过于OCLC将“基于云”的服务引入图书馆界。2009年4月23日,OCLC在都柏林正式宣布将向它的会员图书馆提供“基于云的”、Web规模的、协作式的图书馆管理服务。这是图书馆界的第一个云计算服务。作为领域应用的专业云计算服务,OCLC的“Web级协作型图书馆管理服务”即WorldCatLocal的强化版已于2009年7月上线。OCLC对超过1000多个会员图书馆进行云计算新产品的服务,其目标是取代当前图书馆的集成管理系统。

国外图书馆现已开始采用云服务来削减自己的IT部门,增加效率。

3.2 云计算在国内图书馆应用状况

云计算在国内图书馆的实际应用还处于理论研讨阶段。2009年9月25日,中国图书馆学会学术委员会在上海举办了第一届“云计算与图书馆”研讨会,会议的一个结论是“云计算对数字图书馆来说是一个不可回避的问题”。此举也表明国内图书馆界已开始重视云计算,在云图书馆研究和应用上迈出了重要的一步。

在应用上有实质进展的是中国高等教育文献保障系统CALIS的数字图书馆云服务平台(Nebula-Platform)。从2008年起,CALIS陆续推出了支持SaaS的新一代馆际互借与文献传递系统共享版、支持分布式云计算服务的CALIS数字图书馆云平台(CALISEasyCloudPlatform)等一系列“云”应用系统。截至目前,CALIS云服务平台的框架已基本构建完成,CALIS采用云计算在全国构建分布式的数字图书馆云服务平台。

4 云计算在图书馆应用的优势

云计算作为一种技术与应用结合的理念,为传统图书馆提供了一种新的运营模式。对于经济条件较好的图书馆而言,可建立自己的专有云,作为“云”中心的一个节点;而对于资金欠缺或规模不大的图书馆而言,则可定制已存在的云服务,并在此基础上利用应用软件对云数据进行过滤,满足读者需求。

4.1 为图书馆提供服务的高可靠性、高扩展性[6]

图书馆所有的数字资源都集中在馆内的服务器上,一旦服务器出现故障,图书馆将无法进行正常工作,甚至导致重要数据丢失,造成不可挽回的后果。而云计算中有成千上万台服务器,当某台服务器出现故障,云计算中的其他服务器可在极短时间内启动并提供服务,真正实现无间断的安全服务。

云计算具备灵活的扩展性和弹性,可动态伸缩,满足应用和用户规模增长需要。当系统应用请求突然剧增时,如果资源节点服务能力不够,云计算能在几分钟之内自动地动态增加服务节点数量。反之,服务节点数量能自动地随着流量减少而减少。

4.2 为图书馆降低服务成本,提高服务效率

在传统图书馆借阅服务和新兴数字图书馆数字化服务中,享受图书馆信息服务都需要用户投入较高成本。云计算是一种超强存储和计算的泛在信息服务平台,对用户PC机的存储与计算能力及获取空间的要求均有所降低,用户信息获取成本能极大地降低。同时,云计算所面对的是TB甚至PB级数据,云计算模式下的计算是分布在大量分布式计算机上进行的。凭借云计算中成千上万的计算机提供强大计算能力,在极短时间内,就能对所需大量数据进行快速处理,完成海量数据的分析、挖掘、处理、存储,为用户提供科学的技术支持和分析数据。

与传统数字图书馆相比,利用云计算进行图书馆数字资源检索更加有效。云计算检索功能还可为图书馆提供新的服务模式,即按用户使用量来付费,根据不同用户,开发不同检索界面。用户通过Google式的检索界面将检索请求提交给云计算服务器,服务器根据用户提交请求调配强大的计算能力,进行本体演算、机器智能推理等复杂计算,合理分析用户需求,根据分析结果调配存储在云存储服务器的资源,将结果提供给用户。

4.3 提高图书馆信息资源利用率,在更大范围实现资源共享

“云”中的信息资源可随时更新。作为社会信息的中心——图书馆,其信息需求日日更新,借助云计算平台,图书馆把最新信息即时提供给用户就拥有了可行性。采用这种云计算模式,图书馆用户可实时运行、随时使用已有的各种云计算中的资源,简化和压缩了图书馆信息服务中咨询获取过程。用户只需要一个能链接云计算端的终端设备,便可轻松获取所需信息及服务,延伸了服务方式,降低了用户获取信息的难度和成本,从而吸引更多用户利用图书馆信息资源。图书馆通过云计算能最大限度地共享图书馆信息资源,提高图书馆信息资源的社会价值和利用率[7]。随着云计算技术的成熟及广泛推广,全球图书馆的数字资源将得到真正的整合,从而实现共建及共享。结束语

目前,云计算在图书馆中的应用还处在探索阶段,相关工具和技术还在不断完善,存在诸如安全问题,版权保护问题,相关标准、协议、接口问题,网络带宽问题等都需要解决。

1 王平.云计算关键技术在数字图书馆中应用研究[EB/OL].http://wenku.baidu.com/view/49397a5277232f60 ddcca151.html.

2 解析:云计算发展进程中的六大关键技术[EB/OL].http://www.searchcloudcomputing.com.cn/showcontent_59997.html.

3 陈全,邓倩妮.云计算及其关键技术[J].高性能计算发展与应用,2009(1).

4 韩普,沈思,路高飞.云计算在国内外数字图书馆中的应用及进展[J].现代情报,2012(5).

5 赵力.云计算在数字图书馆应用[J].科技信息,2011(11).

6、7 靳贺敏.云计算在图书馆数字资源建设中的应用探究[J].甘肃科技,2011(7).

猜你喜欢

数据管理虚拟化编程
企业级BOM数据管理概要
定制化汽车制造的数据管理分析
海洋环境数据管理优化与实践
编程,是一种态度
元征X-431实测:奔驰发动机编程
CTCS-2级报文数据管理需求分析和实现
编程小能手
纺织机上诞生的编程
基于OpenStack虚拟化网络管理平台的设计与实现
对基于Docker的虚拟化技术的几点探讨