已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
云计算和大容量数据处理1.简介在某种程度上,云计算是面向服务计算的一个非常成功的例子。云计算的三大哲学是基础架构即服务(IaaS)、平台即服务(PaaS)和软件即服务(SaaS)。这些概念还可以扩展到DBaaS或存储-as-a-service(SaaS)。云计算通过卓越的灵活性、分割费、前期投资和风险转移等多个主要特征成为部署新应用程序的常用方法。随着众多云计算应用程序服务的陆续出现,多种云平台诞生了。越来越多的平台和应用程序作为生产者和消费者,互联网上的数据量以惊人的速度增长。因此,可扩展数据管理系统成为云计算基础架构的重要组成部分。可扩展分布式数据管理的研究持续了很多年。大多数研究都集中在如何设计可扩展系统,这既适用于集中任务,也适用于专业分析任务更新。初始方案包括应用于更新密集型操作的分布式数据库和用于专业分析操作的并行数据库。其中,并行数据库已从原型系统发展到可用的业务系统级别。相反,分布式数据库从未商业化的开发业绩很差。2.可扩展的批量数据管理系统服务所复盖的数据访问模式的变化和急剧增长的需求催生了一种称为密钥值存储的新系统。随着密钥-值存储模型的出现,受到了各种企业的关注和广泛采用。MapReduce模型和开源实施项目Hadoop在业界和学术界迅速应用。进一步,在各种应用方案中,为了提高可用性和运营效率,正在提出多种Hadoop增强解决方案。部署在云上的应用程序服务有很多空间可以根据对数据管理的每个迫切要求进行研究。最后,许多系统解决方案诞生了,以应对各种领域的大规模数据管理带来的挑战。各种云计算服务需要对分散的海量数据进行处理分析。尤其是云计算应用程序的数据管理挑战体现在数据的大量、异构和不确定性上。除MapReduce外,云计算系统(包括Google GFS、BigTable和Amazon Dynamo)中的数据管理技术还可帮助您构建高度可用、可扩展的分布式数据存储系统。2.1 MapReduce技术MapReduce是Google提出的用于并行计算大于1TB的大型数据集的软件体系结构。MapReduce是一种新的编程模型,它将批量异构数据的所有操作抽象为两个操作:Map和Reduce。使用Map函数将作业分解为适合在单个节点上执行的计算子作业图1 .MapReduce体系结构模型调度实例后,获取“Key-Value”集。Reduce函数根据预先确定的规则合并在Map阶段获得的“关键值”集,以获得最终计算结果。MapReduce体系结构模型最成功的优点是,无论多么复杂,您都可以根据需求将庞大的异构数据处理任务划分为粒度计算子任务,并通过在多个计算节点之间灵活安排参与计算活动和计算的数据来全局优化计算资源和存储资源分配。MapReduce方法还在将Map操作和Reduce操作分配给群集中的相应节点时考虑数据的本地。这意味着Map/Reduce通常安排在参与计算数据的存储库节点或附近的节点上运行。2.2 GFS技术Google文件系统(GFS)是大型分布式文件系统。通过MapReduce和BigTable等技术,为Google云计算提供分布式大容量存储解决方案,构成了Google独有的云计算解决方案集。GFS的体系结构模型将整个系统的节点分为三个角色类别:客户端(Client)、主服务器(Master)和Chunk Server(块服务器),如图2所示。Client是GFS提供给应用程序的访问接口,是一组不符合POSIX规范并作为库文件提供的专用接口。应用程序直接调用这些库函数并将其与库相关联。主节点是GFS的管理节点,其数量逻辑上只有一个,负责存储系统的元数据和管理整个文件系统,是GFS文件系统的大脑。Chunk Server负责特定的存储操作,数据以文件形式存储在Chunk Server上,可以有多个Chunk Server,其数量直接决定了GFS的大小。GFS将文件图2 .GFS体系结构模型固定大小的区块(默认情况下为64 MB);每个区块称为Chunk(数据块),每个Chunk都有相应的索引号(索引)。在GFS访问中,客户机首先访问主节点,获取要与之交互的Chunk Server信息,然后直接访问以完成数据访问。GFS的这种设计方法实现了控制流和数据流的分离。客户端和主服务器之间只有没有数据流的控制流,可以显着减少主服务器的负载,从而避免出现限制系统性能的瓶颈。在客户端和Chunk Server之间直接传输数据流的同时,文件被拆分为多个Chunk以实现分布式存储,客户端可以同时访问多个Chunk Server,从而非常并行地处理整个系统I/O活动,显着提高了总体性能。2.3 BigTable技术Google建议的BigTable技术是基于GFS和MapReduce构建的大型分布式数据管理系统。BigTable是非常大的表结构,实际上可以超过1PB(1024TB)。将所有数据作为对象处理,形成一个巨大的表。对于BigTable,Google定义如下:BigTable是一种分布式存储系统,旨在结构化数据管理中,可在数千台服务器上存储数Pb的数据,许多Google应用程序(如Google earth)目前基于BigTable。基于BigTable模型的Hadoop Hbase开源项目在越来越多的应用程序中发挥着作用。BigTable是稀疏、多维和有序的映射,其中每个Cell(单元格)都通过行关键字、列关键字和时间戳进行了三维部署。Cell的内容本身就是字符串。例如,保存网页的内容时,数据模型如图3所示。在图3中,反向URL“com . cn n . www”是此行的关键字,而“contents”列存储多个版本的web内容,每个版本都有时间戳。BigTable还提供了Column Family(列组)机制,用于将多个相似的列合并为一个列。例如,“anchor”Column Family具有“anchor: ”和“anchor:my.look.ca”列。使用Column Family的概念,可以轻松地横向扩展表。图3 .BigTable数据模型图3中有web文档中全文的文本列和标题列,无需分析全文,因此可以快速找到文档的标题。锚点文本有两列。一个是“anchor: ”,一个是包含从站点到的超链接的锚点文本。如图3的单元格中所示,超链接的文本为“example”。Anchor: 上,从到的超链接的锚点文本为“单击此处”中选择所需的构件。这些列属于“锚点文本列组”(column group)。通过向此列组中添加其他列,可以添加更多链接信息。图4 .Tablet位置结构BigTable使用类似于三层b树的结构存储Tablet的位置信息,如图4所示。第1层是存储在Chubby中的文件,包含rootdatable的位置信息。Rootdatt包含特殊metadata表中所有Tablet的位置信息。Metadata表中的每个table都包含一组用户Tablet。Rootdatt实际上是metadata表的第一个Tablet,但是,由于此表的处理更加特殊(rootdatable绝对不拆分),因此Tablet的位置信息存储结构不会超过3个级别。其中,Chubby存储了多个rootdatable位置信息。Metadata Tables存储许多用户表的位置信息。因此,当用户读取数据时,Chubby将读取rootdatt的位置信息,然后按层次向下读取,直到找到所需数据。BigTable的负载平衡使用传统方法,在执行作业的过程中,随时只将一个Tablet服务器分配给每个Tablet。依赖一个主服务器监视子表服务器的负载,将访问列表迁移到负载较轻的子表服务器,从而基于所有子表服务器的负载迁移数据,包括平衡表服务器的负载。2.4 Dynamo技术Dynamo是高可用性、专有的键值结构化存储系统或分布式存储系统。数据库和分布式哈希表的特点为Amazon web服务(AWS)提供了本机支持,而不会直接暴露在外部网络上。目前,Dynamo已实施了很多,包括Apache Cassandra、Project Voldemort、Riak等。图5 .Dynamo体系结构Dynamo使用分布式哈希表作为底层存储体系结构和概念。此体系结构最大的原因是,数据可以均匀地存储在环路中,每个保存点可以相互识别(数据必须在环路中传递,由于相互错误检测,节点之间需要通信),不需要控制主体点,单个故障点完全没有危险。此外,Dynamo的主要优点是可以使用三个参数(n、r、w)来调整实例以满足实际需要。Dynamo支持对不同版本的对象进行记录和处理,可以将不同版本提供给应用程序,并且提供可以更灵活地集成到自身中。对象的副本数遵循(n,r,w)的规则,n个副本,如果r次读取一致,则确定读取成功;如果w次写入成功,则认为写入成功。n个不需要全部成功完成,R WN可确保数据的最终一致性。在此,读取操作比一次读取多个系统(例如HDFS)要麻烦,但更易于写入,适合某些应用程序方案的要求。负载平衡在Dynamo系统中是天生的优势,因为使用分布式哈希表在所有点之间均匀存储数据,所以需要在不访问热点的情况下平衡每个点的数据存储量和访问压力。3.摘要Google的BigTable、MapReduce和Amazon的Dynamo技术是新兴的云计算数据管理领域,它在云计算的大量数据处理问题和应用程序特性方面进行了大量创新,综合来说,分布式存储技术可用于大规模分布式、需要大量数据访问的应用程序。GFS运行在各种类似的通用硬件上,并提供容错功能,从而为用户提供低成本、高可靠性、高并发和高性能数据的并行访问。考虑到数据的不确定性、分布式异质性、批量、动态变化等,采用分布式数据管理技术,通过BigTable、Hbase等分布式数据库技术处理和分析大型数据集,为用户提供高效的服务。为了在分布式环境中有效地利用数据挖掘和处理,我们采用了基于云计算的并行编程体系结构(如MapReduce),自动将任务划分为多个子任务,通过映射和简化将任务调度和分配到大规模计算节点,从而实现了两个阶段。后台复杂的并行执行和任务调度不需要用户和程序员的注意。4.参考文献1刘正伟、文领、张海涛等。云计算和云数据管理技术J。计算机研究与开发,2012,49 (Z1) 333626-31。2周小芳、陆家恒、李翠萍等。从数据管理的角度看,巨大的数据挑战JJ。中国计算机学会通讯,2012,8(9): 16-20。进展,邓基尼。云计算和核心技术J。计算机应用程序,2009,29(9): 2562-2567。4 Agrawal D、Das、El aba
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025江苏南通市保障房建设投资集团有限公司子公司招聘1人备考考试试题及答案解析
- 医院副院长面试问题及答案参考
- 2026绥阳农信联社实习生招募43人备考笔试题库及答案解析
- 诺基亚贝尔技术支持经理笔试题库含答案
- 数据治理师面试题及合规性考察含答案
- 2025年合肥工业大学招标与采购管理中心专业技术人员招聘备考考试试题及答案解析
- 未来趋势AI在渗透测试中的应用与挑战
- 结构工程师面试常见问题集
- 游戏软件测试工程师的每日工作流程
- 500千伏变电站设备维护方案
- 工地大门施工协议书
- 文史哲与艺术中的数学智慧树知到期末考试答案章节答案2024年吉林师范大学
- 铁血将军、建军元勋-叶挺 (1)讲解
- 2023年西门子PLC知识考试题(附含答案)
- 鼻鼽(变应性鼻炎)诊疗方案
- 消防应急疏散和灭火演习技能培训
- 流产诊断证明书
- 劳动合同英文版
- 川泸运地块土石方量勘察报告报告
- 威廉姆斯内分泌学 内分泌学书籍
- GB/T 20933-2021热轧钢板桩
评论
0/150
提交评论