面向读密集型应用的事务内存云研究(2)
4存储组件
存储组件以云的形式向事务组件(也可以直接面向最终用户)提供数据存储服务。从用户角度来看,所有的读写操作只针对一个数据副本,数据一致性和可用性、系统可扩展性由存储组件透明地实现。TMC中的存储组件是一群相互依存的服务集合,共同实现系统设计目标,如图3所示。
Locator服务将数据项id映射到数据中心,Router服务将消息转发到节点,Allocator服务决定存放数据项及元数据的节点,Selector服务选择存放数据副本的数据中心,MetaData与RawData服务用于存储元数据和数据值,Logger服务记录针对每个数据项的操作。
4.1存储组件的扩展性
TMC存储组件的设计目标之一是系统吞吐量与容量同系统节点数之间成正比,即具有良好的可扩展性。为实现这个目标,课题组首先在前期工作基础上[8],采用机架选举和多路线性散列算法,将工作负载均匀地分布到不同的数据中心以及每个数据中心的内部节点,该过程不需要“中心节点”来管理,全体数据中心和节点各司其职,防止了系统瓶颈的产生。
为进一步增强扩展性,存储组件的另一个设计目标是将元数据(包括位置、大小、副本信息等)与数据项本身解耦,具体实现上采用了层次化的设计方法。最上层是定位层,在访问每个数据项时,均需通过Locator服务计算出存储其元数据的数据中心,为提高可用性,元数据也被多处存储(见图1),并使用强一致性协议同步,Locator从多个副本中根据预设策略(例如距离)选择合适的元数据。
存储组件第二层是操作层,由MetaData服务负责处理数据项的创建与删除,并确保数据项与其id属性间的一一对应。
存储组件的最下层是数据层,其中的Allocator服务根据数据项id计算其元数据和数据值的存储节点;Router服务负责接收来自用户或其他数据中心的请求,并将其转发至相应节点。本文假设所有数据中心均具有一定的稳定性,每个数据中心均有一张全局成员信息表。每当增加或移除一个数据中心时,需要更新所有信息表。
4.2数据一致性
因为从用户角度来看,所有读写操作只针对一个数据副本,所以需要使用数据一致性协议来更新其他副本。存储组件共实现了三种数据一致性协议[6]供用户在创建数据项时自由动态地选择,见表1。
5实验
实验的主要目的是为了验证TMC能适用于读密集型的云计算应用,同时也应具备良好性能和高可用性。本文利用澳大利亚墨尔本大学的开源系统CloudSim[9]作为测试平台来模拟云计算环境,课题组实现了TMC原型及相关算法,并集成到CloudSim中。实验机器的软硬件配置为Windows764bit+四核IntelCorei52.53GHz+内存4GB。
本实验选用了TPC-C作为测试基准和数据集,TPC-C是专门针对联机交易处理系统(OLTP)的面向事务处理与数据库性能的测试标准,可在其中模拟比较复杂并具有代表意义的OLTP应用环境。实验的比较对象包括另一种典型分布式事务内存系统GenRSTM[10]和MySQL集群。实验结果如下。
图4所示吞吐量实验中,首先通过CloudSim模拟出了五个数据中心,所有节点随机均匀地分布其中,再将TPC-C测试集中的只读事务比例设置为80%。对于MySQL,创建一张包含id和value字段的临时表,将记录作为数据项存取。从实验结果中可看出,三个系统的吞吐量均可随着节点数增多而线性增长,但在以读任务为主的环境下,TMC的优势更为明显。同时由于日志记录等磁盘操作的影响,MySQL在读密集环境下的吞吐量明显低于另外两种事务内存系统。
6结束语
在云计算环境下,存在着大量对数据密集型应用的需求,传统的分布并发式编程模型与数据存储架构的不足已日益凸显,尤其是在需要同时应对系统性能、可扩展性和数据一致性需求的场合下。本文提出了一种基于事务内存与云存储技术面向读密集型应用的编程与存储模型TMC,TMC分为事务组件与存储组件两大模块,事务组件在保证数据一致性的前提下,允许所有只读事务无需远程验证即可顺利提交,系统可扩展性与可用性则通过存储组件中的相关服务集合实现。以上特性使得TMC适用于对性能、可扩展性和数据一致性均有严格要求的读密集型云计算应用。
由于受实验条件和环境的限制,课题组只对TMC原型进行了简单的仿真模拟实验,尚未开发实现完整的可用于生产环境下的系统。我们计划在本文工作基础上,完成对TMC在“云”中的测试,并对其商用化进行更加深入的研究与实践。
参考文献:
[1]TimHarris,etal.TransactionalMemory:AnOverview[J].IEEEMicro,2007.27(3):8-29
[2]JeffreyDean,SanjayGhemawat.MapReduce:simplifieddataprocessingonlargeclusters[J].Commun.ACM,2008.51(1):107-113
[3]AvinashLakshman,PrashantMalik.Cassandra:adecentralizedstructuredstoragesystem[J].SIGOPSOper.Syst.Rev.,2010.44(2):35-40
[4]NicolasSchiper,etal,P-Store:GenuinePartialReplicationinWideAreaNetworks[C].Proceedingsofthe201029thIEEESymposiumonReliableDistributedSystems,2010:214-224
[5]BieniusaA,FuhrmannT.Consistencyinhindsight:AfullydecentralizedSTMalgorithm[C].Proceedingsofthe2010IEEEInternationalSymposiumonParallelandDistributedProcessing,2010:1-12
[6]徐俊刚,邵佩英.分布式数据库系统及其应用(第三版)[M].科学出版社,2012.
[7]RachidGuerraoui,etal.Genuineatomicmulticastinasynchronousdistributedsystems[J].Theor.Comput.Sci.,2001.254(1-2):297-316
[8]林菲,张万军,孙勇.一种分布式非结构化数据副本管理模型[J].计算机工程,2013.39(4):36-38
[9]R.N.Calheiros.CloudSim:atoolkitformodelingandsimulationofcloudcomputingenvironmentsandevaluationofresourceprovisioningalgorithms[R].NY,USA:Software:PracticeandExperience,WileyPress,2010.
[10]NunoCarvalho,Genericreplicationofsoftwaretransactionalmemory[C].Proceedingsofthe7thMiddlewareDoctoralSymposium,Bangalore,India,2010:14-19
期刊库(http://www.zgqkk.com),是一个专门从事期刊推广、投稿辅导的网站。
本站提供如何投稿辅导,寻求投稿辅导合作,快速投稿辅导,投稿辅导格式指导等解决方案:省级投稿辅导/国家级投稿辅导/核心期刊投稿辅导//职称投稿辅导。
【免责声明】本文仅代表作者本人观点,与投稿辅导_期刊发表_中国期刊库专业期刊网站无关。投稿辅导_期刊发表_中国期刊库专业期刊网站站对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。请读者仅作参考,并请自行承担全部责任。
投稿辅导服务咨询与期刊合作加盟
陆老师联系QQ: 913775405(普刊)
蒋老师联系QQ: 867306987(核心)
刘老师联系QQ: 271374912(核心)
联系电话:18015016272
17327192284
投稿辅导投稿邮箱:zgqkk365@126.com
期刊推荐
- 《课程教育研究》 旬刊 国家级
- 《网络空间安全》(信息安全与技术)月刊 国
- 《价值工程》旬刊 国家级 科技统计源期刊
- 《高教论坛》 月刊 省级
- 《法制与社会》旬刊 省级
- 《中国教育学刊》月刊 14版北大核心
- 《语文建设》 旬刊 14版北大核心
- 《中国绿色画报》 月刊 国家级
- 《社科纵横》季刊 社科类优秀期刊
- 《求索》月刊 14版北大核心期刊
- 《财会月刊》旬刊 14版北大核心
- 《艺术品鉴》 月刊 省级
- 《中华建设》月刊 国家级 建设类优秀期刊
- 《教学与管理》旬刊 北大核心
- 《当代经济》 旬刊 省级
- 《新课程研究》旬刊 省级 教育类优秀学术期
- 《文教资料》 旬刊 省级
- 《学术界》 月刊 双核心
- 《吉林教育》旬刊 省级 教育类学术期刊
- 《中国农业资源与区划》 月刊 14版北大核心
- 《继续教育研究》月刊 北大核心期刊
- 《财经界(学术版)》半月刊 国家级
- 《电影评介》半月刊 14版北大核心
- 《公路交通科技》 月刊 北大核心
- 《新闻传播》月刊 省级 新闻类优秀期刊