基于Hadoop与虚拟流媒体服务器集群的流媒体点播方法

文档序号:7984352阅读:269来源:国知局
专利名称:基于Hadoop 与虚拟流媒体服务器集群的流媒体点播方法
技术领域
本发明涉及一种基于Hadoop ( —种高容错性、高传输率、以流的方式进行访问的分布式存储集群)存储资源以及在刀片机上部署的虚拟流媒体服务器,使用虚拟机调度策略以及文件缓存策略的点播方法。
背景技术
随着互联网技术应用的日趋广泛,视频点播服务已成为人们日常生活的重要组成部分,视频点播服务质量的好坏很大程度取决于后台点播服务器的支持。构建后台点播服务器的方法有很多,申请人经过查新,检索到3篇有关流媒体服务器系统或流媒体点播方法的专利,它们分别是1.流媒体服务动态负载方法(申请号200610106932. X)2. 一种适用大规模用户点播的集群式流媒体服务器系统(申请号 201010117647.4)3. 一种视频网格自适应负载均衡调度方法(申请号=200610144274. 3)上述现有专利共同存在的问题是流媒体服务器基本都是真实的服务器而不涉及虚拟流媒体服务器集群;动态负载方法都是基于服务器的负载情况将用户的请求进行均衡的分配,而不考虑用户的热点程度;未考虑后台数据读取带宽因而无法动态控制虚拟机间隔缓存大小。

发明内容
本发明的目的是解决背景技术中有关流媒体服务器系统及流媒体点播方法专利的不足,提供一种将流媒体文件存放在Hadoop存储集群上,虚拟流媒体服务器集群部署在刀片服务器上,接收从Hadoop存储集群上获取流媒体文件数据,并采用虚拟流媒体服务器集群调度与数据缓存策略,实现流媒体点播功能的方法。为达到以上目的,本发明是采取如下技术方案予以实现的一种基于Hadoop与虚拟流媒体服务器集群的流媒体点播方法,其特征在于,包括下述步骤(1)流媒体文件存放在Hadoop存储集群上,(2)流媒体服务器构建在虚拟服务器集群之上,(3)虚拟流媒体服务器集群直接从Hadoop存储集群上获取流媒体文件数据,并采用虚拟流媒体服务器集群调度与数据缓存方法,实现流媒体点播功能,其中,步骤(3)所述的虚拟流媒体服务器集群调度方法是,虚拟机服务器管理节点用来控制虚拟流媒体服务器的开启以及关闭,虚拟机服务器管理节点以虚拟流媒体服务器集群网络带宽占用率超过 80 %或者内存占用率超过90 %为依据,触发虚拟流媒体服务器创建机制;以虚拟流媒体服务器集群整体带宽占用率小于20%并且内存占用率小于30%且存在用户请求量为O的虚拟流媒体服务器为依据,触发虚拟流媒体服务器回收机制;步骤(3)所述的虚拟流媒体服务器集群数据缓存方法是,采用了虚拟流媒体服务器集群的数据缓存均衡部署策略,为热点流媒体文件进行文件的前缀部署;根据流媒体文件实时热点程度,将实时热点文件部署在新开启的虚拟流媒体服务器上;并且在进行流媒体点播服务时,考虑请求相同流媒体文件的时间先后顺序以及关联性,对从Hadoop存储集群获取的数据采用对应的间隔缓存;根据虚拟流媒体服务器集群向Hadoop存储集群的文件读取带宽,动态控制各个虚拟流媒体服务器上的缓存大小,触发虚拟机调度策略。上述方案中,所述的触发虚拟流媒体服务器创建机制的具体步骤为Stepl 虚拟机服务器管理节点初始化;St印2 虚拟机服务器管理节点获取每个虚拟流媒体服务器设置的预留内存θ i以及预留的网络带宽Pi ;获取当前开启虚拟流媒体服务器个数N;Step3:虚拟机服务器管理节点实时更新检测每个虚拟流媒体服务器占用的网络带宽α i以及占用内存的β i ;如果虚拟流媒体服务器集群网络带宽占用率
权利要求
1.一种基于Hadoop与虚拟流媒体服务器集群的流媒体点播方法,其特征在于包括下述步骤(1)将流媒体文件存放在Hadoop存储集群上,(2)将流媒体服务器构建在虚拟服务器集群之上,(3)虚拟流媒体服务器集群直接从Hadoop存储集群上获取流媒体文件数据,并采用虚拟流媒体服务器集群调度与数据缓存方法,实现流媒体点播功能,其中,步骤(3)所述的虚拟流媒体服务器集群调度方法是,虚拟机服务器管理节点用来控制虚拟流媒体服务器的开启以及关闭,虚拟机服务器管理节点以虚拟流媒体服务器集群网络带宽占用率超过 80 %或者内存占用率超过90 %为依据,触发虚拟流媒体服务器创建机制;以虚拟流媒体服务器集群整体带宽占用率小于20%并且内存占用率小于30%且存在用户请求量为O的虚拟流媒体服务器为依据,触发虚拟流媒体服务器回收机制;步骤(3)所述的虚拟流媒体服务器集群数据缓存方法是,采用了虚拟流媒体服务器集群的数据缓存均衡部署策略,为热点流媒体文件进行文件的前缀部署;根据流媒体文件实时热点程度,将实时热点文件部署在新开启的虚拟流媒体服务器上;并且在进行流媒体点播服务时,考虑请求相同流媒体文件的时间先后顺序以及关联性,对从Hadoop存储集群获取的数据采用对应的间隔缓存;根据虚拟流媒体服务器集群向Hadoop存储集群的文件读取带宽,动态控制各个虚拟流媒体服务器上的缓存大小,触发虚拟机调度策略。
2.根据权利1所述的基于Hadoop与虚拟流媒体服务器集群的流媒体点播方法,其特征在于所述的触发虚拟流媒体服务器创建机制的具体步骤为Stepl 虚拟机服务器管理节点初始化;St印2 虚拟机服务器管理节点获取每个虚拟流媒体服务器设置的预留内存θ i以及预留的网络带宽μ i;获取当前开启虚拟流媒体服务器个数N;St印3 虚拟机服务器管理节点实时更新检测每个虚拟流媒体服务器占用的网络带宽CiiW及占用内存的Pi ;如果虚拟流媒体服务器集群网络带宽占用率^ = 2"=1γΝ ρ /过80%或者内存占用率β = “#/ 超过90%,则跳转到St印4,否则继续检测;/Z^1ASt印4:虚拟流媒体服务器从可分配的资源中,为将开启的虚拟流媒体服务器设置预留内存ΘΝ+1、网络带宽μ N+1,开启虚拟流媒体服务器为用户点播进行服务。
3.根据权利1所述的基于Hadoop与虚拟流媒体服务器集群的流媒体点播方法,其特征在于,所述的触发虚拟流媒体服务器回收机制的具体步骤为Stepl 虚拟机服务器管理节点初始化;St印2 虚拟机服务器管理节点获取每个虚拟流媒体服务器设置的预留内存θ i以及预留的网络带宽μ i;获取当前开启虚拟流媒体服务器个数N;St印3 虚拟机服务器管理节点检测当前每个虚拟流媒体服务器占用网络带宽Cii以及占用内存的Pi ;如果当前虚拟流媒体服务器集群的带宽占用率^ = 2"=120%以及内存占用率
4.根据权利要求1所述的基于Hadoop与虚拟流媒体服务器集群的流媒体点播方法,其特征在于所述的虚拟流媒体服务器集群的数据缓存均衡部署策略为以前缀部署的方式将各个文件前缀部署在虚拟流媒体服务器集群上,具体步骤如下Stepl 根据Hadoop存储集群对流媒体文件访问的记录,获取在时间T内服务器的热点流媒体文件Qi,热点流媒体文件定义是在时间T内,其访问次数Ni大于Hadoop存储集群文件总访问次数N的5% ;Step2:根据热点流媒体文件Qi的访问的次数Ni,可以得到Qi的相对的热度
5.根据权利要求1所述的基于Hadoop与虚拟流媒体服务器集群的流媒体点播方法,其特征在于所述的在新开启的虚拟流媒体服务器上部署实时热点文件的具体步骤为Stepl 获取当前Hadoop存储集群对流媒体文件的访问情况,设此时文件Qi存在Ni个请求访问,Hadoop存储集群响应总请求数为N ;Step2 对于Ri满足Ri > 5% M的文件θ i,将其加入实时热点文件集合,记实时热点文件集合为Pi, θ j, ... , θχ,θ y},且总共热点文件为k个;St印3 设此时虚拟流媒体服务集群已经开启的虚拟流媒体服务器个数为M,从热点文件集合{ θ ρ θ j, ... , θ χ,θ y}中随机选择「A/Ml个,将这些热点文件在新开的虚拟流媒体服务器上进行前缀部署。
6.根据权利1所述的基于Hadoop与虚拟流媒体服务器集群的流媒体点播方法,其特征在于,所述的间隔缓存方法为,Stepl 当t时刻,用户请求q到达虚拟机服务器管理节点,查看当前请求的流媒体文件 θ是否存在于虚拟流媒体服务器集群的前缀部署当中。如果存在,跳转至Step2 ;否则跳转至St印3 ;Step2 对于存在流媒体文件θ前缀部署的虚拟流媒体服务器集合{S1;S2,. . .,Sn},选择虚拟流媒体服务器中内存占用率最小的响应请求q,对用户进行服务;当此时此虚拟流媒体服务器已经存在对Hadoop存储集群流媒体文件θ的请求q',q'开始缓存读取的数据,且Hadoop存储集群请求文件θ前缀之后的数据,直到q'缓存下来的数据能够为请求 q服务;如果当前虚拟流媒体服务器不存在对Hadoop存储集群对流媒体文件θ的请求,则使用前缀缓存进行服务,并且从Hadoop存储集群中获取θ前缀文件的后续部分;Step3 查看虚拟流媒体服务器对文件θ在时间(t_At,t)时间内是否存在相同的文件请求。如果存在相同的文件请求,跳转至St印4 ;否则跳转至St印5 ;Step4:将请求q分配给存在文件θ请求的虚拟流媒体服务器中内存占有率最小的虚拟流媒体服务器m,m开始缓存文件θ的数据。此虚拟流媒体服务器m开始对请求q请求的文件θ进行服务,虚拟流媒体服务器使用前缀缓存进行服务,并且开始向Hadoop存储集群请求文件θ前缀文件的后续部分,直到请求到在时间t开始缓存的数据,利用间隔缓存的数据进行服务;Step5:如果不存在相同的文件请求,则分配一台内存占用率最小的虚拟流媒体服务器,开始响应此次请求q的服务;St印6 当有新的请求的时候,重复至St印1,进行循环服务。
7.根据权利1所述的基于Hadoop与虚拟流媒体服务器集群的流媒体点播方法,其特征在于,所述的动态控制各个虚拟流媒体服务器上的缓存大小具体步骤如下Stepl 虚拟机服务器管理结点获取当前Hadoop存储集群服务带宽占有率Φ。如果Φ 大于90%,跳到St印2 ;如果Φ小于10%,跳到St印3 ;St印2 虚拟机服务器管理节点向各个虚拟流媒体服务器发送增加间隔缓存大小的消息;各个虚拟流媒体服务器收到增加间隔缓存消息,增加各个虚拟流媒体服务器的间隔缓存,大小为各个虚拟流媒体服务器可用内存的一半;St印3 虚拟机服务器管理节点向各个虚拟流媒体服务器发送初始化间隔缓存大小的消息;各个虚拟流媒体服务器收到初始化间隔缓存消息,将各自的间隔缓存大小设置为初始值。
全文摘要
本发明公开了一种基于Hadoop与虚拟流媒体服务器集群的流媒体点播方法,虚拟流媒体服务器集群构建在虚拟机服务器集群上,并直接从Hadoop存储集群上获取存储的流媒体文件数据,实现流媒体点播。特别地,该方法使用虚拟机服务器管理节点实时监控虚拟流媒体服务器集群的内存以及网络带宽资源使用情况,实现虚拟流媒体服务器的动态调度;将Hadoop存储集群上的热点文件前缀,按照虚拟流媒体服务器集群均衡部署原则,在虚拟流媒体服务器上进行部署;根据用户前后请求的时序性,在虚拟流媒体服务器上采用了间隔缓存;根据虚拟流媒体服务器集群向Hadoop存储集群的文件读取带宽,控制各个虚拟流媒体服务器上的缓存大小,触发虚拟机调度策略。
文档编号H04L29/06GK102333126SQ20111031261
公开日2012年1月25日 申请日期2011年10月15日 优先权日2011年10月15日
发明者仵中翰, 刘均, 张未展, 杜海鹏, 王军, 郑庆华 申请人:西安交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1