• 学前教育
  • 小学学习
  • 初中学习
  • 高中学习
  • 语文学习
  • 数学学习
  • 英语学习
  • 作文范文
  • 文科资料
  • 理科资料
  • 文档大全
  • 当前位置: 雅意学习网 > 初中学习 > 正文

    [基于云存储的流媒体教育服务研究]流媒体存储服务器

    时间:2019-01-14 03:39:34 来源:雅意学习网 本文已影响 雅意学习网手机站

      【摘要】文章就云存储如何与流媒体技术结合来提供教育服务进行了研究、设计并实现了基于云存储的流媒体教育服务模型,以期在某种程度上解决传统流媒体技术的不足,实现教育资源充分共享,提高学习者的学习效率。
      【关键词】云存储;流媒体;HDFS
      【中图分类号】G40-057 【文献标识码】A 【论文编号】1009―8097(2011)02―0108―04
      
      目前大部分流媒体技术应用主要是基于传统的B/S模式,普遍存在服务器性能不足、带宽不够、资源重复建设、资源存储空间不够等问题,导致流媒体服务系统能力降低。基于P2P的流媒体技术可以用普通节点的资源为其它节点提供服务以解决带宽不够的问题,但会过多的占用客户端资源、对学习终端性能提出了更高的要求,同时也没有解决服务器瓶颈及海量数据存储的问题。云存储与流媒体技术结合,把数据量比较大的流媒体资源分割切块并分布式地存储在不同的服务器中,采用负载均衡技术对各个数据节点进行调配,缓解服务器与网络的压力,有效的解决了流媒体应用的诸多不足问题。同时还可以节省系统成本与管理费用、简化教育资源的管理、真正实现教育资源的充分共享。
      
      一 流媒体教育资源现状
      
      流媒体(Streaming Media)是运用智能流技术,以视音频流 (Video-Audio Stream)的形式进行数字媒体的传送,使人们在很低的带宽环境下也可以接收到连续不断的较高品质的视音频节目的技术,它涉及到流媒体数据的采集、压缩、编码、存储、传输及网络通信等多项集成技术。流媒体的特点在于用户无需下载整个视频或音频资源,而是由流媒体服务器实时连续的向用户提供流式数据,实现真正的边下载边播放[1]。教育资源与流媒体技术的结合,极大的丰富了教育信息资源,提高了信息资源的利用率。它们的结合打破了传统的时间与空间的限制、在更大范围内实现了资源的共享,使得学习者可以根据需要随时随地进行学习,实现了真正的自主学习。同时教育资源以声音、动画等多种方式结合来表现教学内容,使其具有较强的交互性、给学习者多种感官刺激、具有丰富的感染力、有利于教学信息的传递。
      目前的教育资源与传统的流媒体技术的应用主要是以B/S或P2P模式来实现的,在实际应用中还存在诸多不足[2]:
      资源利用率不高、重复建设问题突出:采用独立的资源库,没有统一的标准,库与库之间相互隔离,资源重复建设。
      资源相对集中、造成系统瓶颈与网络阻塞:传统的流媒体服务采用单服务器、单存储器来部署。当大量用户并发访问时,流媒体服务器CPU的性能急剧下降、I/O总线负载严重、网络带宽不足。此外,当流媒体服务器或存储器发生故障时,流媒体服务将不能被使用,因此采用这些模式部署的流媒体服务可靠性与可用性不强。
      数据存储成本高:通常情况下教育视频资源所占的存储容量比较大,需要购买大量昂贵的大容量存储设备才能满足数据存储的要求。
      传统流媒体技术的诸多不足,难以满足教师及学生的需求,某种程度上造成了学校教育资源的严重浪费,另一方
      面也造成了学习者学习效率低下,阻碍了学习者的自主学习。
      
      二云存储与流媒体
      
      1 云存储
      云计算(Cloud Computing)是分布式处理(Distributed Computing)、并行处理(Parallel Computing)和网格计算(Grid Computing)的发展,或者说是这些计算机科学概念的商业实现[3]。它是透过网络将庞大的计算处理程序自动分拆成无数个较小的子程序,再交由多部服务器所组成的庞大系统经计算分析之后将处理结果回传给用户[4]。云存储是在云计算概念上延伸和发展出来的一个新的概念:它是指通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。
      2 云存储技术对流媒体教育资源的影响
      教育资源与云存储相结合,突破了传统的资源存储集中化管理模式,它将教育资源存储在云端的各个分布的数据结点上,解决了传统模式中存储容量不足、服务器性能瓶颈等一系列的问题。云存储与流媒体技术相结合,可以有效解决传统流媒体教育服务的不足。
      (1)解决了服务器与网络瓶颈。客户端从流媒体服务器中获取资源的位置后,客户端就直接与云端的各个数据结点进行数据交互,避免了服务器性能瓶颈及网络阻塞。
      (2) 提高了可靠性与可用性。传统的流媒体服务平台采用单服务器、单存储器模式来部署,一旦服务器或存储设备发生故障,则服务将不能再被使用。而基于云存储的流媒体将教育资源分散地分布在云端的各个节点当中,而且每个数据都有备份,即使云中的某台服务器被迫中断,也不会影响系统的正常使用。
      (3) 存储成本低,扩展性好。传统的流媒体使用专业的存储设备存储资源,昂贵的设备致使成本大幅度提高;而基于云计算的流媒体服务将资源存储在不同的数据节点,从而节省了成本;同时云中的节点可以在不影响数据完整性的情况下动态的添加或删除,提高了服务平台的可扩展性。
      (4)易于管理,提高服务性能。基于云存储的流媒体服务平台是将教学视频资源存储在云中,有利于对资源进行统一的管理,提高资源的使用率。云中的数据是分布式存储的,它能够很好的分担存储的压力,从而提高系统的性能。
      3 HDFS
      Hadoop[5]框架是Apache基金会开发的开源项目。Hadoop实现了HDFS文件系统,提供了简单易用的编程接口,使Hadoop成为易于处理和保存大量数据的分布式云计算平台,具有可扩展性强、成本低、效率高、安全性好等特点。
      HDFS(Hadoop Distributed File System)是Hadoop的分布式文件系统,具有高容错性,可以部署在低价的硬件设备之上。HDFS文件系统是一种典型的中从式文件分布系统,该文件系统效仿Google的GFS文件系统而设计。HDFS很适合那些有大数据集的应用,并且提供了对数据读写的高吞吐率。
      HDFS由一个名叫Namenodede 主节点和多个名叫Datanode的子节点组成。
      Namenode:是文件系统的主节点。它把文件分成几块,并通过集群的复制分配给容错。namenode持有所有关于储存文件的元数据信息,并可以起到一个接口的作用,使群体的数据块被视为普通文件。
      Datanodes:是HDFS的从节点。该节点用于物理存储数据,根据客户端的读写请求提供服务,按照Namenode的指示执行数据复制任务,同时也作为datanode提供数据共享。
      
      从上面的图中可以看出,Namenode,Datanode,Client之间的通信都是建立在TCP/IP的基础之上的。当Client要执行一个写入的操作的时候,命令不是马上就发送到Namenode,Client首先在本机上临时文件夹中缓存这些数据,当临时文件夹中的数据块达到了设定的Block的值(默认是64M)时,Client便会通知Namenode,Namenode便响应Client的RPC请求,将文件名插入文件系统层次中并且在Datanode中找到一块存放该数据的block,同时将该Datanode及对应 的数据块信息告诉Client,Client便这些本地临时文件夹中的数据块写入指定的数据节点。
      HDFS采取了副本策略,其目的是为了提高系统的可靠性,可用性。HDFS的副本放置策略是三个副本,一个放在本节点上,一个放在同一机架中的另一个节点上,还有一个副本放在另一个不同的机架中的一个节点上[6]。
      
      三 云存储的流媒体教育服务模型设计与实现
      
      针对传统流媒体在教育应用中的不足,设计了基于云存储的流媒体教育服务模型。该模型将各种教育视频、音频、动画等资源分布存储在云中的各个数据节点中,当用户访问资源时,流媒体服务器会响应用户的请求,并从资源列表中把资源的所在节点的地址及数据块的地址返回给用户,用户得到数据节点的地址和数据块的地址后,将与各数据节点进行通讯,从而获得所需要的视频、音频资源。
      1 云存储流媒体教育服务理论模型
      基于云存储的流媒体教育服务模型分为三部分,从上到下依次为用户访问层、数据处理层和云端存储层。
      用户访问层:它以portal、Web Services、终端播放器、节目系统及VOD等多种形式呈现,主要是提供服务,与用户进行交互,使用户只需要点击鼠标就可以获取所要的资源。
      数据处理层:它由流媒体服务平台和提供各种数据处理的模块组成。流媒体服务平台主要是提供流媒体服务,负责接受客户端HTTP请求,从资源列表中获取它所要访问的资源在云端存储层的数据节点及数据块的位置,并返回给客户端。流媒体服务平台可以用Real Networks的Real System、Windows Media Technology、Quick Time、FLV等软件来构建。数据处理模块用以完成数据的处理,它负责用户管理、资源管理、目录管理、资源采集、转码、系统性能监控等服务的管理。数据存储模块负责与云端存储层的名称结点进行交互并管理教育资源的存储。数据访问模块负责将用户的请求重定向到云端存储层中的数据结点上。
      云端存储层:云端存储层对使用者来说,不是指某一个具体的设备,而是指由若干个存储设备和服务器所构成的集合体。云端存储层的应用软件与存储设备之间利用集群服务、HDFS和虚拟化等技术,通过光纤或局域网进行互联,实现云端存储层中多个存储设备之间的协同工作,并对外提供存储服务。它由存储教育资源的多台服务器及其存储设备(NAS、SAN、DAS)、应用软件等多个部分组成,并在每台服务器中安装Hadoop软件来搭建云计算环境,利用HDFS分布式文件系统来实现云计算的分布式存储,对每个数据节点进行调度,实现资源的负载均衡,同时最大程度的提高服务器的利用率。
      
      2 基于云存储的流媒体服务实现过程
      对于用户来说使用基于云存储的流媒体服务主要侧重于上传、下载资源与在线访问等操作。鉴于流媒体资源大容量,高带宽要求等特点,基于云存储的流媒体服务模型需要用特殊的技术来处理,以提高系统的可用性。
      资源存储处理过程:首先用户需要登录流媒体资源服务平台,经过服务器端的身份认证后,具有上传资源权限的用户,选择所要上传的资源并向服务器端发送请求。对于流媒体这样容量比较大的资源,Client向主服务器的NameNode节点发起文件写入的请求。NameNode根据文件大小和文件块配置情况,返回给它所管理DataNode的信息。主服务器将根据文件的大小进行切块计算(本文测试中按照10MB/计算,不到10MB的也作为一块)。接着主服务器将动态判断存储节点的状态,将文件均衡分配到各个节点。最后将文件信息、文件块信息(所属文件ID、块顺序、快名、块大小、对应节点的IP等)插入到数据库中。然后服务器将文件块信息以XML格式发送给客户端,客户端为每个存储节点建立一个文件队列,将文件块并行上传到对应的节点。当存储节点每接收一个文件块后,向服务器发送一条确认信息,服务器端数据库将文件快状态改为上传成功,当整个文件快都上传成功,服务器将数据库中将该文件状态改为上传成功。
      在资源上传过程中,当某一个数据块存储空间已使用完时,系统将会自动申请下一个数据块,直到数据存储完毕。同时,NameNode会为所存储的资源完全建立一个副本(副本的数据结点及数据块会记录在数据处理层的资源列表中),这样当主存储文件发生故障时,保障系统的高可用性。而且在整个过程中数据结点会周期性地发送一个心跳信息到名字结点,DataNode收到后,并给予响应。当NameNode得到了DataNode及时的响应,便能确保数据结点是可用的。当网络断开或是故障时,会使DataNode与NameNode失去联系,NameNode没有定时收到心跳信息,就标记这些数据结点不可用。此时,它会开始对故障的视、音频资源重新复制。NameNode检查所有需要复制的数据块,并开始把它们复制到其它可用的DataNode中去。同时它会通知数据处理层资源存储的地址已更改,让其更新资源列表中信息存放的地址。这样动态更新资源列表中的地址来确保服务正常的运行。
      
      下载流媒体资源则是上传的一个逆过程:当用户登录流媒体服务系统,针对某一个视/音频资源向服务器发送下载/请求,服务器收到下载请求后,从数据库中搜索到该资源存储的DataNode及数据块的地址,并将文件块的信息以XML格式发送给客户端。客户端得到了DataNode与数据块地址的响应后,为每个存储节点创建一个线程,将文件块并行下载到本地计算机临时文件夹中,客户端下载完所有的文件块后,将其整合为一个完整的文件,并删除临时文件夹中的数据块。
      
      四 性能测试
      
      为了测试基于云存储流媒体服务的性能,我们用10台普通电脑组成云存储服务器,其中1台设置为名称节点,9台设置为数据节点。名称节点和数据节点的配置为双核CPU,2GB内存,320G硬盘,一块100M全双工网卡,并以一台交换机相连。两台交换机之间使用1 Gbps的链路相连。每台电脑上安装Red Hat 9.0 Linux操作系统,Tomcat5.5,MySQL5.0,JDK1.6.0等开发软件,并选用Hadoop-0.20.3版本来搭建云环境(关于Hadoop的安装过程详见Hadoop官方网站)。
      依照测试结果,我们分别对传统流媒体服务器与基于云存储的流媒体服务器从使用管理、数据安全性、存储性能等多个方面进行了比较。
      
      由上图所示的数据读取速度的结果我们可以看出,随着客户端数量的逐渐增多,传统的流媒体服务器数据读取速度在达到一个峰值后逐渐在降低,而基于云存储的流媒体服务随着客户端数量的逐渐增多,读取速度并没有因为负载过大而减小。但是当客户端达到一定数量的时候,数据读取增长的速率有一定的减缓,这是由于随着读取者的增多,多个读取者同时从一个数据节点读取数据的可能性会增加,因而读取性能会有所下降。
      
      五结束语
      
      随着云计算的发展,云存储与流媒体技术的结合为校园资源的建设注入新的活力,它能在更大范围内为学校节省资金、提高教学效率。基于云存储的流媒体必然会在教育中得到广泛的应用。
      
      参考文献
      [1] 蒲善荣.流媒体技术特点及其在现代教学模式中的作用探究[J]. 四川文理学院学报(自然科学) ,2009,19(2):89-92.
      [2] 岳晓融.流媒体技术在校园网中的应用研究[J].中国电化教育,2005,222:91-93.
      [3] 李开复.云计算[J].中国教育网络,2008,(6):34.
      [4] 尚建新,解月光,王伟.云计算模型下的PLE构建初探[J].现代教育技术.2009,19(4):46-49.
      [5] [OL].
      [6] 高宏卿,汪浩. 基于云存储的教学资源整合研究与实现[J].现代教育技术,2010,(3):97-101
      
      Research on Educational Streaming Media Service Based on Cloud Storage
      GAO Hong-qingGUO Wen-luZHAI Yan-jie
      (Department of Computer&Information Technology, Henan Normal University, Xinxiang,Henan 453007,China)
      Abstract: In this paper, how cloud storage is combined with streaming media technologies to provide educational services is studied. The educational services model of streaming media based on cloud storage is designed and achieved to address the deficiencies of traditional streaming media technology. The full sharing of educational resources is realized and the learning efficiency of learners is improved.
      Keywords: cloud storage; streaming media; HDFS
      
      *基金项目:河南省教育信息化项目“基于网格技术的数字化校园应用研究”(编号2006-13)。
      收稿日期:2011年1月16日
      编辑:红叶

    推荐访问:流媒体 研究 教育 服务

    • 文档大全
    • 故事大全
    • 优美句子
    • 范文
    • 美文
    • 散文
    • 小说文章