论文部分内容阅读
摘要:目前,视频流量已经成为互联网的主要流量,各种视频应用层出不穷,从数字高清电视到IPTV。互联网用户使用视频应用的终端也日益多样化,从PC到手机。然而,不同的网络视频平台和终端支持的视频内容和格式,如编码格式、分辨率、帧率等参数不尽相同。为了满足不同平台和用户的视频服务需求,往往需要对视频进行转码,即进行相应的编码格式、分辨率和帧率等格式转换。视频转码是一项非常耗时耗资源的工作,随着视频数量的急剧增长,传统的单机或者集中式转码已经不能满足人们对效率和质量的要求。而云计算通过集中、分配资源可以提供强大的计算能力,并且有良好的扩展性和较高的容错能力。所以可以将视频转码工作转移到云计算平台上。采用云平台进行视频转码,不仅可以承受海量视频数据的存储、转码需求,同时由于云计算本身具有的资源聚集特性,取用方便,费用低廉。在众多的云计算平台中,Hadoop由于其开源特性,是目前应用最为广泛的云计算平台。本论文首先设计和实现了基于Hadoop的云转码系统。该系统利用MapReduce分布式机制进行视频转码。系统包括代理服务器,视频转码模块,Cache模块三大组件。代理服务器负责处理用户的视频服务请求,视频转码模块负责视频处理工作,Cache模块负责管理原视频和转码后的视频文件。接着,论文对所实现的转码系统的性能进行了测试和分析。比较该系统与单机的视频转码性能,测试分析了分段数量和分段大小对系统转码性能的影响,分析了各个阶段在系统执行过程中所占的时间比例。在系统的执行过程中,视频文件需要进行多次对HDFS进行读写,当前HDFS读数据时副本选择策略是选择离客户端网络拓扑距离最近的节点,当热门副本集中在同一节点或者一个机架内时,用户就会对有限的资源进行激烈的竞争,造成该节点或者该机架的负载大大增加,从而影响整个集群的性能。为了克服该不足,论文提出了基于负载均衡的副本选择策略,使用线性加权法定量描述节点的负载量,选择负载量最轻的节点作为读取节点。仿真实验表明,改进的算法有效减少了副本传输时间,增加了HDFS集群的吞吐率。