MapReduce被工业界广泛接受,除了设计者Google使用MapReduce之外,Yahoo!使用开源的项目Hadoop实现了MapReduce的功能,并作为内部数据并行处理的基础结构。大量研究人员在MapReduce系统中展开工作,研究各种数据管理技术在MapReduce中的实现方法以及MapReduce在数据管理领域的功能角色。如文献[13]设计了高级的数据流系统Pig,设计目标是在SQL和MapReduce之间建立联系通道。Pig系统实现了MapReduce系统中各种SQL基本操作的具体实现。文献[14]在MapReduce系统中提出了大规模数据集上的学习树模型的并行算法框架PLANET,定义了一系列分布式计算并在MapReduce中实现了其中的一个算法。文献[15]同样致力于MapReduce中SQL语言的实现,并且实现了AsterDataSystemnCluster数据库系统,支持多种用户自定义函数功能。文献[16]评估了MapReduce在多核或者多处理器系统中的适用性,并设计了Phoenix作为MapReduce在共享内存系统中的改进版本,其功能主要包括自动管理进程建立、动态任务调度、数据划分以及处理器之间的容错性。文献[17]讨论了并行数据库和MapReduce之间的关系。文章指出并行数据库和MapReduce是互补型技术,两者可以互相借鉴,获取更好的工作效率。并行数据库和MapReduce都不能完全取代对方。文献[18]研究了MapReduce系统中的自动优化问题,用以减轻调节系统的复杂性。文献[19]通过测试研究MapReduce的系统性能,发现通过调整五种主要的设计因素,MapReduce的系统性能可以获得大幅提升(2.5-3.5倍),而与并行数据库系统的性能差异则明显缩小。文献[20]在MapReduce中使用三个阶段的Map-Reduce方法实现了并行集合的相似性连接操作。算法通过有效的数据划分平衡了工作负载并且实现了最小化备份参数。文献[20]给出了算法在内存资源不足情况下的实现方法。文献[21]讨论了在现有云计算平台(如Amazon的EC2)中部署数据管理系统的约束限制及机遇场合。论文提出如下观点,大规模数据分析、决策支持系统与事务处理数据库系统相比,更能利用云计算系统的优势。同时指出,利用二者结合的无共享并行数据库是云系统中数据库研究的切实有效的出发点。文献[22]使用大规模数据分析任务剖析比较了并行数据库和MapReduce的性能。与MapReduce相比,并行数据库的优势主要表现在数据模式的支持,索引等提升性能的技术,SQL语言的表达能力。而MapReduce的优势在于自动的并行化,任务的灵活性,高可靠的容错能力,在异构环境中的运行能力。实验表明,在集群同构且节点不发生失效的情况下,并行数据库的性能要远远优于MapReduce。而在节点频繁失效的情况下,并行数据库的性能就会出现显著下降,而MapReduce的性能影响则较小。HadoopDB[23]将数据库管理系统和MapReduce结合,使用PostgreSQL开源数据库管理系统作为MapReduce节点管理系统,而且使用Hadoop提供的MapReduce框架连接系统中的节点。HadoopDB具有较快的单机处理速度优势,并且兼有MapReduce的异构有效性、容错性的优势。HadoopDB支持SQL语言。
3无线传感器网络上数据聚集调度的研究工作
文献[24]提出了云计算数据存储系统中批量插入数据的有效方法,系统中的数据按照key值范围水平划分并分布在各个存储节点中。文献[24]考虑了在数据插入过程中的数据迁移代价和插入后系统吞吐量之间的折中,而且也证明了问题属于NP-hard问题。文献[25]研究了如何在系统中有效的并行化范围查询的问题。本文考虑到存储系统的客户应用消耗数据的速度与查询获取结果的速度之间的差异,通过动态适应的方式增加或减少并行处理范围内实现而需查询的节点个数,以此使得系统并行获取足够的查询结果发送到客户应用。文献[26]实现了在MapReduce中构建分布式数据流处理的系统。文献[27]研究了在大规模分布式数据管理系统中使用索引和视图的机制。本文使用两种视图,即远程视图表和本地视图表,并以此提供了系统吞吐量和视图更新速度之间的折中处理,同时也给出了构建和维护式图标以及使用视图回答聚集查询、连接查询、选择查询的方法。文献[28]设计了可扩展的分布式关系表系统Crescando用以支持大量的查询和更新,并提供可预测的操作延迟。Crescando使用并行协作的扫描指令以及数据流中“查询-数据”连接技术保证工作负载的反应时间和结果的新度。Crescando在处理各种工作负载时不能取得最优性能,但是在工作负载未知,而且变化的情况下,Crescando却具有独特优势。文献[29]设计了云计算数据存储系统Spinnaker,在数据的可获取性和一致性之间达到了更新的折中。Spinnaker使用一致性备份协议取得了高可获取性和timeline一致性,并在元组级的事务处理中实现了ACID。与Dynamo相比,Spinnaker具有更好的数据一致性,而只需付出较小的性能代价。文献[30]设计了云计算平台测试的模拟软件CloudSim,用于简化云计算中应用开发的性能评估。文献[31,32]设计了云计算平台中的单维索引CG-Index,用以支持key查询和范围查询。CG-Index通过两级索引结构,在本地构建B-Tree索引并选择若干B-Tree节点发布为全局索引。系统中的节点则组织成BATONOverlay结构,其发布的全局索引负责回答系统中收到的查询。文献[33]设计了ecStore,将数据对象分布并备份于云计算集群环境中。文献[34]设计了P2P数据管理系统中在线近似聚集的处理算法,通过不断获取数据,提高计算结果的精度。文献[35]比较了现有云计算平台的架构对构建云数据库的影响,其主要研究对象是在线事务处理而不是在线分析处理。结果表明现有的主流云计算系统具有不同的架构,对于相同的工作负载也具有不同的性能。文献[36]提出了一种分布式的B树索引。该索引结构将数据索引缓存在各个存储节点中,回答查询时,首先检查缓存内容是否过期,如果还未过期,则直接在本地回答查询,否则需要执行相应更新操作。这种索引结构在数据更新快的情况下,效率严重下降。
4结束语
目前,云计算系统中数据管理方面的研究已经引起广泛关注和浓厚兴趣,而查询处理和优化技术则是其中最为基础、且最为重要的研究内容,对此已经开展了较为详尽与深入的研究工作。本文中,归纳并总结了云计算系统、数据管理以及查询和索引技术等方向已有的研究,并对可能的研究方向进行了简要的分析与阐述。
参考文献:
[1]DECANDIAG,HASTORUND,JAMPANIM,etal.Dynamo:Amazon’shighlyavailablekey-valuestore.SOSP’07October14-17,Stevenson,Washington,USA,2007.
[2]CommunitySystemsGroupYahoo!Research,CommunitySystemsResearchatYahoo!,SIGMODRecord,September2007,36(3).
[3]GHEMAWATS,GOBIOFFH,LEUNGST.TheGoogleFileSystem,SOSP’03,October19-22,BoltonLanding,NewYork,USA,2003.
[4]CHANGF,DEANJ,GHEMAWATS,etal.BigTable:ADistributedStorageSystemforStructuredData[C]∥USENIXSymposiumonOperatingSystemsDesignandImplementation(OSDI),2006.
[5]DEANJ,GHEMAWATS.MapReduce:SimplifiedDataProcessingonLargeClusters.SODI,2004.
[6]BRANTNERM,FLORESCUD,GRAFD,etal.BuildingDatabaseonS3.SIGMOD’08.
[7]COOPERBF,RAMAKRISHNANR,SRIVASTAVAU,etal.PNUTS:Yahoo!’shosteddataservingplatform.VLDB’08,august24-30,Auckland,NewZealand,2008.
[8]OLSTONC,REEDB,SRIVASTAVAU,etal.PigLatin:Anot-so-foreignlanguagefordataprocessing,SIGMOD’08,June9-12,Vancouver,BC,Canada,2008.
[9]ISARDM,BUDIUM,YUYuan.Dryad:distributeddata-parallelprogramsfromsequentialbuildingblocks.EuroSys’07,march21-23,Lisboa,Portugal,2007.
[10]CHAIKENR,JENKINSB,LARSONP-A,etal.SCOPE:easyandefficientparallelprocessingofmassivedatasets,PVLDB’08,August23-28,Auckland,NewZealand.
[11]DEWITTDJ,ROBINSONE,SHANKARS,etal.Clustera:anintegratedcomputationanddatamanagementsystem,PVLDB’08,August23-28,Auckland,NewZealand,2008. |