基于云存储的教育资源中心设计班级:2012211314姓名:黎佳雨学号:2012211501随着数据的暴增,传统的存储方式已经不再满足海量数据的存储需求,云存储技术的飞速发展,使得云存储成为了一种新型的数据存储解决方案。随着我国教育资源飞速增长,大量数据的存储已成为一个新的研究内容。传统存储架构存在资源利用率低、信息和资源无法有效共享等问题。本文在分析Hadoop分布式文件系统HDFS的基础上提出将云存储应用到教学资源,实现教学资源共享。将提高学院现有的教学资源的利用率,避免相同资源的重复建设,满足大量数据存储和管理,从而降低教学资源建设和维护的成本。云存储是解决海量数据存储的最有效的手段。教育单位正在推广模块化,项目化教学改革。采用基于工作过程的项目化课程体系,“教学做”一体,必需大量课件、视频、模拟仿真软件,强调通过在线考试,在线仿真实训操作,示范院校和骨干院校建设也需要上传大量的教学资源。目前,主流的教学资源平台是基于B/S模型的Web站点,这种模式存在的问题大致:(1)存储容量不够大:虽然现在硬盘的容量越来越大,价格也越来越低,但是还是不能满足发展的需求。(2)数据安全性差:重要数据缺乏可靠的备份和恢复措施。(3)数据管理不规范:因为没有建立有效的管理制度;有时如果数据更新的方法不恰当,就会造成数据的重复存放;需要大批量数据变化时,查找数据资源时就变得特别麻烦。(4)教学数据资源利用率整体不高:大量的数据是存在于各任课教师的电脑里,这样让许多有用的资源没有得到充分的利用,不能达到真正意义上的资源共享。云存储的出现能够解决这些问题。将云存储整合到高职教学资源中,将为学校节省大笔投资费用;把高职教学资源放在云中,还便于高职教学资源的共享,从而提高精品课程、示范特色专业等优秀职教成果的辐射作用。目前,尚未见高职院校应用云存储技术开发自己的教学资源存储与服务的云存储产品之类的相关报道。基于此目的,本文提出将云存储应用到教学资源管理平台设计中。云存储系统的结构模型由4层组成。存储层,存储层是云存储最基础的部分。存储设备可以是FC光纤通道存储设备,可以是NAS和iSCSI等IP存储设备,也可以是SCSI或SAS等DAS存储设备。云存储中的存储设备往往数量庞大且分布多不同地域,彼此之间通过广域网、互联网或者FC光纤通道网络连接在一起。存储设备之上是一个统一存储设备管理系统,可以实现存储设备的逻辑虚拟化管理、多链路冗余管理,以及硬件设备的状态监控和故障维护。基础管理层,基础管理层是云存储最核心的部分,也是云存储中最难以实现的部分。基础管理层通过集群、分布式文件系统和网格计算等技术,实现云存储中多个存储设备之间的协同工作,使多个的存储设备可以对外提供同一种服务,并提供更大更强更好的数据访问性能。应用接口层,应用接口层是云存储最灵活多变的部分。不同的云存储运营单位可以根据实际业务类型,开发不同的应用服务接口,提供不同的应用服务。比如视频监控应用平台、IPTV和视频点播应用平台、网络硬盘引用平台,远程数据备份应用平台等。访问层,任何一个授权用户都可以通过标准的公用应用接口来登录云存储系统,享受云存储服务。云存储运营单位不同,云存储提供的访问类型和访问手段也不同。云存储就是通过集群应用、网格技术等功能,将网格中大量不同类型的存储设备通过应用软件集合起来工作,并且共同对外提供数据存储和访问的系统。基于高校教育的特点,高校教育资源云存储平台就是一个数据存储和管理的云存储系统,其主要是将各种数据拆分为较小的数据块,然后交由计算机集群系统进行分布式储存。可以说云存储是高校教育平台整合的关键,因为云存储教育平台能够将各种文件复制在不同的服务器内,避免因为某个服务器硬件出现损坏等而导致相关文件的丢失;云存储扩容非常的简单,而且云存储会将不同的工作合理分配到不同的存储服务器内,避免资源的不合理分配。一、数据存储平台相关技术云计算是一种通过Internet以服务的方式提供动态可伸缩的虚拟化资源的计算模式。它是一种全新的商业模式。美国国家标准与技术研究院(NIST)定义:云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问,进入可配置的计算资源共享池,这些资源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互。“云计算”概念被大量运用到生产环境中,国内的“阿里云”与云谷公司的XenSystem。以及在国外已经非常成熟的Intel和IBM,各种“云计算”的应服务范围正日渐扩大,影响力也无可估量。Hadoop平台云计算是一种商业计算模式,其来源于分布式计算,并行计算和网格计算。本存储平台的设计主要使用了Hadoop分布式技术。Hadoop是一个分布式系统基础架构,由Apache基金会开发。Hadoop实现了Google的GFS和MapReduce算法,提供了简单易用的编程接口。用户可以在不了解分布式底层细节的情况下,开发分布式程序。该技术为高职教学资源平台提供了相关数据存储和处理的模型。Hadoop作为云计算的核心技术,目前在工业界得到了广泛的应用。Hadoop是Apache开源组织按照MapReduce的工作原理设计的一种开源的分布式处理框架,也是云计算环境下最著名的开源软件。在Hadoop系统中,应用程序可以并行运行在由大规模廉价硬件构成的分布式系统中。Hadoop在内部实现了容错和扩展机制,可以构建成高可靠性和高扩展性的分布式系统。Hadoop主要有三部分组成:HDFS(HadoopDistributedFileSystem)、MapReduce分布式计算模型和Hbase(HadoopDatabase)。HDFS与谷歌的GFS相对应,布署在廉价的硬件设备上,是Hadoop的最底层。它具有可伸缩性和高容错性、对硬件配置要求不是很高等特点,它提供高传输率(highthroughput)来访问应用程序的数据,适合那些有着超大数据集(largedataset)的应用程序。除此以外它具有以下特点:扩容能力、成本低、高效率、可靠性。这些特点使云存储和高职教学资源整合更容易实现。HDFS可以存储TB级(甚至PB级)的海量数据,并为应用程序提供高吞吐率的数据访问。HDFS的数据访问是顺序的,适用于数据密集型的应用。MapReduce是一种海量数据处理的分布式计算模型。在集群中运行分布式应用程序时,MapReduce编程模型简单易用。Hadoop提供的MapReduce编程模型是谷歌MapReduce的开源实现。在MapReduce编程模型中,开发者只需要编写MapReduce函数,而任务调度、容错等机制由底层实现。因此,即使开发者没有分布式系统的经验也能编写高效的分布式应用程序。Hbase是BigTable的开源实现。Hbase构建在HDFS之上,提供分布式数据库服务。Hbas提供一种按列存储的模型,用户可以实时读写,也可以在大规模数据集上进行随机访问。二、教学资源大量数据存储平台的总体设计高校教育资源平台总共包括:基础层、应用层、系统层、平台层以及接入层。基础层处于云储存平台的最底层,主要是提供硬件技术支持的,其主要通过集群技术、网格技术、数据加密技术等实现云储存设备的协调作业,并且提供统一的存储服务与访问;资源层是云存储教育平台实现共享的重要组成部分,它主要是将各种数据资源等进行整合,实现集中存储管理,云计算数据中心主要是使用网络服务和存储服务,而不需要专门的服务器为终端提供服务;系统层,主要是针对云储存平台的应用而言,其主要包括用户管理模块、任务管理模块、安全管理模块以及资源管理模块等;应用层也是云存储教育平台资源利用的主要形式,根据教育资源使用需求的要求,开发各种应用服务接口;接入层,就是用户以及管理员进入云存储平台页面的接口,其应用人群主要是师生与社会人员。平台层(Hadoop平台):Hadoop是一个分布式系统基础架构,Hadoop平台是开源的云计算平台,它主要由:HDFS、MapReduce和Hbase组成。本平台我们主要使用HDFS。教学资源平台的主要功能模块:教学资源系统提供了一个能存储大量数据的教学资源管理平台。主要功能模块包括:系统管理员模块、用户管理模块、系统平台管理模块和教学资源管理模块。平台的功能模块设计:系统管理员模块:具有普通用户的所有功能和权限管理、日志管理、用户管理。用户管理模块:文件上传、下载、用户登陆和文件删除。系统平台管理模块:服务器管理、故障管理、帮助手册功能。教学资源管理模块:在线考试、课程教案、教学视频、实训指导(仿真实训)、专业建设、骨干院校建设、精品课程建设等教学资源的存储。功能子模块的实现基础云存储平台系统完成后就需要对各个功能子模块进行研究,这一部分也是云存储平台的核心,首先数字教育资源制作子系统的实现。此系统是给用户提供各种学习资源的平台,其主要包括:课件资源制作和云平台资源注册提交;其次数字教育资源管理和共享子系统的实现。此部分主要是对云存储平台进行资源的检索、删除、编辑等。数字资源管理包括:超级管理员、审核员以及一般用户;最后数字教育资源发布和服务子系统的实现。由于云存储平台的终端类型比较多,如何快速地传输云存储信息就需要构建成熟的数据传输优化技术方案,目前比较成熟的技术方案是基于CDN技术的数字内容传输机制。该技术可以随时监测网络流量,将教育资源发布到最接近用户的网络边缘,有效地解决了网络拥堵的问题,提高了云存储教育平台的使用效率。系统平台的网络拓扑结构,海量的教学资源数据平台的网络拓扑结构主要包括前端的用户操作区和后端的数据共享服务区。其中数据共享服务区包括Hadoop集群网络的各类服务器。这些服务器可以分布在不同的区域。随着数据量的增大和应用需求的变化,平台可以灵活地进行扩展,而这些操作对于用户来说是透明的。平台设计的总体原则,校园的教学资源有着数据量大、增长速度快的特点,以往的硬件平台已经无法满足要求,本文设计的存储平台利用云存储技术,能够满足海量数据资源的增长需求,并且随着教学资源数据量的不断增长,存储设备也可以不断地进行扩展,由此本文设计的存储平台需满足以下原则:(1)高扩展性。系统设备应能够根据实际需要进行动态的扩展或伸缩,灵活地增加或者减少存储节点,实现按需存储的目的。(2)高可靠性。存储平台具备高容错性和安全性。当系统平台的其中一个节点失效时,控制节点能够自动进行合理调度,把工作负载交给其他空闲节点,从而不间断服务。(3)低成本性。平台对设备资源的硬件要求不高,可以利用大量廉价的设备实现系统的高性能。(4)备份、高迁移性。系统具有同步镜像数据副本的安全策略,系统会根据需求进行有计划的数据备份,一旦出现故障,系统自动将把数据迁移到其它节点,以保证系统的正常运行。(5)高资源共享率。本系统平台的设计,以教学资源共享为前提,实现数据最大程度上的共享,达到公共信息资源的公平获取。三、海量数据存储策略文件系统的设计节点主要分为两部分:一种是数据节点,另外一种是非数据结点,其中系统中的主要成分都是数据节点,非数据节点主要指管理节点和监控节点统一由Master节点表示,如右图所示。①Client节点。这个节点主要是指需要获取海量分布式文件系统数据文件的应用程序(访问用户),可以是Web应用业务服务器,也可以是其他通过当前海量数据存储系统的访问接口进行访问的其他主机和服务器。②DataNode节点。作为系统的主要构成部分,DataNode节点负责了系统正常运行的大部分任务,其中包括:数据存储、提供查询和事务处理,并且在必要时根据系统的需求提供计算能力。其中所有Node节点之间的关系也不完全是相同的,可以根据地域划分邻居节点和非邻居节点,一般使得同一地域内的节点都是邻居节点,基于这种设计主要考虑到系统规模可能会随着分布式数据应用不断增大,如果只有一层关系管理节点,将会变得很困难,并且在实际使用中,同一地域的节点之间的通信单价和质量都是比较好的,所以让系统的管理分为3层,一个Master以每个组的关系看待节点,而节点自己能够区分是邻居节点(同一组)还是远程节