一种流媒体文件的存储方法、存储装置及流媒体服务器的制作方法

文档序号:7757153阅读:194来源:国知局
专利名称:一种流媒体文件的存储方法、存储装置及流媒体服务器的制作方法
技术领域
本发明涉及流媒体服务器,尤其涉及一种流媒体服务器中流媒体文件的存储方 法、存储装置及流媒体服务器。
背景技术
视频点播技术(Video on Demand,简称V0D)是通过网络为用户提供实时流媒体服 务。一个VOD系统主要由三部分组成服务端系统、网络系统和客户端系统。用户在客户端 系统发送请求,通过网络系统访问服务端系统,获取服务端系统上的视频内容,从而实现视 频点播。VOD系统中服务端系统中的流媒体服务器的服务能力发挥着重要作用。例如,第一, 在用户使用视频点播的高峰期时或服务端系统中存储的流媒体文件有当前的热点文件时, 用户对服务端系统的拜访次数将突发增长,此时要求流媒体服务器单位时间内的输入/输 出(Input/Ouput,简称I/O)吞吐量较高才能满足高拜访次数的应用要求。第二,用户使用 视频点播的过程中,为保护用户的使用体验,客户端的点播请求与服务端系统发送数据之 间的时延越短越好,即要求流媒体服务器能及时快速地响应客户端的请求。第三,对于VOD 系统中的一个重要组成部件,流媒体服务器的寿命,即能提供服务的时间也是越长越好。流媒体服务器基本上是采用磁盘作为流媒体文件的存储介质,因此为提高流媒体 服务器的服务能力,诸如单位时间内的I/O吞吐量、对用户的点播请求的及时响应以及流 媒体服务器服务时间总体的延长等等,现有技术中常常通过优化流媒体服务器的硬件配置 诸如磁盘来提高。但硬件配置的优化常伴随成本增加的问题以及由于磁盘自身机械结构的 约束造成其性能增长有瓶颈,无法与中央处理器以及内存同步优化的问题,因此如何能在 流媒体服务器已有硬件配置的基础上提高流媒体服务器的服务能力是本行业内技术人员 亟待解决的问题。

发明内容本发明所要解决的技术问题是弥补上述现有技术的不足,提出一种流媒体文件 的存储方法、存储装置及流媒体服务器,能使流媒体服务器在已有硬件配置的基础上提高 服务能力。本发明的技术问题通过以下的技术方案予以解决一种流媒体文件的存储方法,将流媒体服务器的内存中的一部分空间模拟成模拟 硬盘,将所述流媒体文件存储于所述模拟硬盘中;所述一部分空间的大小为所述流媒体文 件的大小。优选的技术方案中,所述流媒体服务器包括至少两个内存盘设备;所述将流媒体服务器的内存中的一 部分空间模拟成模拟硬盘包括以下步骤1)在所述内存中开辟一个单位容量的空间;2)调 用多个内存盘设备;3)将所述调用的多个内存盘设备直接模拟成模拟硬盘或做成RAID ;其 中,所述单位容量与所述内存盘设备的个数的乘积大于等于所述流媒体文件的大小。
所述调用的内存盘设备的个数根据做成的RAID的模式选择。所述调用的内存盘设备的个数为5个;所述做成的RAID为RAID5。所述流媒体文件为所述流媒体服务器中视频点播的热点文件。所述流媒体服务器中安装有掉电储备电源。本发明的技术问题通过以下进一步的技术方案予以解决一种流媒体文件的存储装置,所述存储装置包括时序控制模块、模拟模块和存储 动作模块;所述时序控制模块控制所述模拟模块和所述存储动作模块的工作时序;所述模 拟模块将流媒体服务器的内存中的一部分空间模拟成模拟硬盘;所述存储动作模块将所述 流媒体文件存储于所述模拟硬盘中;其中,所述一部分空间的大小为所述流媒体文件的大 小;所述时序控制模块的第一输出端连接所述模拟模块的输入端,所述模拟模块的输出端 连接所述时序控制模块的第一输入端;所述时序控制模块的第二输出端连接所述存储动作 模块的输入端。优选的技术方案中,所述流媒体服务器包括至少两个内存盘设备;所述模拟模块包括单位容量开辟模 块、调用模块和转换模块,所述单位容量开辟模块在所述内存中开辟一个单位容量的空间; 所述调用模块调用多个内存盘设备,所述内存盘的个数与所述单位容量的乘积大于等于所 述流媒体文件的大小;所述转换模块将所述调用模块调用的多个内存盘设备模拟成模拟硬 盘或做成RAID。所述调用模块调用的内存盘设备的个数根据转换模块做成的RAID的模式选择。所述调用模块调用的内存盘设备的个数为5个;所述转换模块做成的RAID为 RAID5。所述流媒体文件为所述流媒体服务器中视频点播的热点文件。所述流媒体服务器中安装有掉电储备电源。本发明的技术问题通过以下更进一步的技术方案予以解决一种流媒体服务器,包括上述流媒体文件的存储装置。本发明与现有技术对比的有益效果是本发明的流媒体文件的存储方法及存储装置,将内存模拟化成可操作设备,然后 将流媒体服务器中流媒体文件存放在模拟化后的内存上,内存上读取数据没有I/O性能的 制约,因此可保证流媒体服务器单位时间内的I/O吞吐量较大,从而能满足高并发I/O访问 次数的应用要求。再者,由于流媒体文件存放在模拟化后的内存上,流媒体服务器工作时直 接从内存中提取流媒体文件,因此流媒体服务器可及时响应用户的点播请求,增强用户体 验。最后,将流媒体文件存放在模拟化后的内存上,充分利用内存资源,分担原先用于存储 流媒体文件的存储介质的压力,可延长该存储介质的寿命,也就间接延长了整个流媒体服 务器的寿命。本发明的存储方法和存储装置中,提高流媒体服务器的服务能力时,不再需要 像现有技术那样通过优化硬件配置增加硬件成本来实现,达到了流媒体服务器在已有硬件 配置的基础上提高服务能力的目的。

图1是本发明具体实施方式
中流媒体文件的存储方法的流程图2是本发明具体实施方式
中流媒体文件的存储装置的结构示意图;具体实施方式下面结合具体实施方式
并对照附图对本发明做进一步详细说明。本具体实施方式
中,流媒体服务器内存支持的容量为1. 5TB,流媒体服务器包括 16个内存盘设备(random access memory disk,简称ramdisk),需存储的流媒体文件大小 为160GB。本具体实施方式
中的流媒体服务器的内存若全部用于模拟硬盘,则可以将近存放 900多小时的码率为3. 75Mbit/s的mpeg2格式的标清节目对应的流媒体文件,而900多小 时基本可以涵盖当前的所有热点内容。如图1所示,一种流媒体服务器中控制文件存储的方法,包括如下步骤将流媒体 服务器的内存中的一部分空间模拟成模拟硬盘,将流媒体文件存储于模拟硬盘中。其中,一 部分空间的大小为流媒体文件的大小。流媒体文件优选为流媒体服务器中视频点播的热点 文件。本具体实施方式
中将内存中160GB大小的空间模拟成硬盘时,采用调用ramdisk 的方式。首先,在内存中开辟一个单位容量的空间;然后调用5个ramdisk,接着将调用的5 个ramdisk模拟成一个独立冗余磁盘阵列(Redundant Array of Independent Disk,简称 RAID), RAID为RAID5模式。本具体实施方式
中,调用的ramdisk的个数根据做成的RAID的 模式选择。因为希望后续模拟时做成的RAID为RAID5模式,而做成RAID5需要5个ramdisk, 所以前期选择调用的ramdisk的个数为5个。本具体实施方式
中采用调用ramdisk技术, 仅在内存中开辟一个小空间,即可达到后续存储大容量流媒体文件的目的。而将内存模拟 成RAID5,可以发挥RAID5的各种优点,如保证高并发I/O访问次数和高可靠性。另外,如 果对流媒体服务器的高可靠性要求不高,可以选择做成的RAID为RAIDO模式,此时前期调 用时调用4个ramdisk即可,因为做成RAIDO需要4个ramdisk。类似地,相应希望做成的 RAID为何种模式,就相应选择调用的ramdisk的个数。需说明的是,单位容量的设置没有硬性规定,只要单位容量的大小满足其与调用 的内存盘设备的个数的乘积大于等于需存储的流媒体文件的大小的条件即可。例如,可以 设置开辟的单位容量为40GB,调用4个ramdisk,两者乘积等于需存储的流媒体文件的大小 160GB,后续做成RAID0。也可以设置开辟的单位容量为40GB,调用5个ramdisk,两者乘积 大于需存储的流媒体文件的大小160GB,后续做成RAID5。还可以设置开辟的单位容量为 20GB,调用9个ramdisk,两者的乘积大于需存储的流媒体文件的大小160GB,直接将9个 ramdisk模拟成模拟硬盘。当然,将内存中160GB大小的空间模拟成硬盘时,也可以选择最简单的方法,直接 将内存中160GB大小的空间模拟成模拟硬盘即可。将内存空间模拟成硬盘可通过现有技术 中的附带该功能的操作系统来完成,诸如LINUX操作系统。将内存模拟成模拟硬盘后,将流媒体文件存储于模拟硬盘中。将流媒体文件存储 于模拟硬盘中时,可以采用先将模拟硬盘格式化(格式化时可以根据需要将模拟硬盘格式 化为相应的文件系统),然后将格式化后的模拟硬盘挂载于存储目录下,最后将流媒体文件 存储于挂载在存储目录下的模拟硬盘中。这样,后续需读取该存储目录位置上的流媒体文 件时,将模拟硬盘所挂载的存储目录位置传送给读写装置。该存储目录即为访问入口,读写装置即到该存储目录下读取流媒体文件,实现流媒体文件的提取。由于本具体实施方式
中将内存模拟为硬盘后存放流媒体文件,所以流媒体服务器 中需要做好一些掉电保护措施,诸如,1.流媒体服务器安装冗余电源,内存电池等掉电储备 电源,以便在流媒体服务器掉电时保护存储在模拟后的内存中的流媒体文件。2.将存储在 模拟后的内存中的流媒体文件做好备份,以便内存中丢失后可以重新调用存储。本具体实施方式
中流媒体文件的存储方法,在VOD中应用内存模拟化为硬盘的技 术,使用模拟成硬盘后的内存空间存储流媒体文件。由于流媒体文件存放在模拟后的内存 中,内存上读取数据没有I/O性能的制约以及读取速度快等优点,因此可保证流媒体服务 器单位时间内的I/O吞吐量较大且能保证对用户点播请求的及时响应。另外,流媒体文件 存放在模拟后的内存上,而不再存放在磁盘中,可释放磁盘的压力,延长磁盘的使用寿命, 间接延长流媒体服务器的使用寿命,服务时间。本具体实施方式
中提高流媒体服务器的服 务能力时,不再需要像现有技术那样通过优化硬件配置增加硬件成本来实现,达到了流媒 体服务器在已有硬件配置的基础上提高服务能力的目的。如图2所示,为流媒体文件的存储装置的结构示意图,该装置包括时序控制模块 1、模拟模块2和存储动作模块3,其中,时序控制模块1的第一输出端11连接模拟模块2的 输入端21,模拟模块2的输出端22连接时序控制模块1的第一输入端12 ;时序控制模块1 的第二输出端13连接存储动作模块3的输入端31。时序控制模块1用于控制模拟模块2和存储动作模块3的工作时序。当模拟模块 2准备就绪时,时序控制模块1通过第一输出端11发送模拟启动信号。模拟模块2接收到 此模拟启动信号后,将流媒体服务器的内存中的一部分空间模拟成模拟硬盘。模拟模块2 完成模拟操作后,通过输出端22向时序控制模块1发送模拟完成信号。时序控制模块1接 收此模拟完成信号后,即通过第二输出端13向存储动作模块3发送存储启动信号。存储动 作模块3接收此存储启动信号后,将流媒体文件存储于模拟硬盘中。其中,上述模拟模块2 模拟的一部分空间的大小为流媒体文件的大小。流媒体文件优选为流媒体服务器中视频点 播的热点文件。本具体实施方式
中,模拟模块2包括单位容量开辟模块、调用模块和转换模块,单 位容量开辟模块在内存中开辟一个单位容量的空间,调用模块调用5个ramdisk,转换模块 将调用的5个ramdisk模拟成一个RAID,RAID为RAID5模式。本具体实施方式
中,调用模 块调用的ramdisk的个数根据做成的RAID的模式选择。因为希望转换模块将调用模块调 用的ramdisk做成的RAID为RAID5模式,而做成RAID5需要5个ramdisk。所以前期调用 模块调用的ramdisk的个数为5个。需说明的是,单位容量开辟模块开辟的单位容量的大小的设置没有硬性规定,只 要单位容量的大小满足其与调用模块调用的内存盘设备的个数的乘积大于等于需存储的 流媒体文件的大小的条件即可。例如,可以设置单位容量开辟模块开辟的单位容量为40GB, 调用模块调用4个ramdisk,两者乘积等于需存储的流媒体文件的大小160GB,后续转换模 块做成RAID0。也可以设置单位容量开辟模块开辟的单位容量为40GB,调用模块调用5个 ramdisk,两者乘积大于需存储的流媒体文件的大小160GB,后续转换模块做成RAID5。还可 以设置单位容量开辟模块开辟的单位容量为20GB,调用模块调用9个ramdisk,两者的乘积 大于需存储的流媒体文件的大小160GB,转换模块直接将9个ramdisk模拟成模拟硬盘。
当然,模拟模块2将内存中160GB大小的空间模拟成硬盘时,也可以选择最简单的 方法,直接将内存中160GB大小的空间模拟成模拟硬盘即可。存储动作模块包括格式化模块、挂载模块和动作模块。将流媒体文件存储于模拟 硬盘中时,格式化模块将模拟硬盘格式化(格式化时可以根据需要将模拟硬盘格式化为相 应的文件系统),挂载模块将格式化后的模拟硬盘挂载于硬盘接口下,动作模块将流媒体文 件存储于挂载在硬盘接口下的模拟硬盘中。这样,后续读取装置需读取该硬盘接口位置上 的流媒体文件时,控制中心将模拟硬盘所挂载的硬盘接口位置传送给读写装置。该硬盘接 口即为访问入口,读写装置即到该硬盘接口下读取流媒体文件,实现流媒体文件的提取。由于本具体实施方式
中将内存模拟为硬盘后存放流媒体文件,所以流媒体服务器 中需要做好一些掉电保护措施,诸如,1.流媒体服务器安装冗余电源,内存电池等掉电储备 电源,以便在流媒体服务器掉电时保护存储在模拟后的内存中的流媒体文件。2.将存储在 模拟后的内存中的流媒体文件做好备份,以便内存中丢失后可以重新调用存储。本具体实施方式
中流媒体服务器中控制文件存储的装置,在VOD中应用内存模拟 化为硬盘的技术,使用模拟后的内存空间存储流媒体文件,从而能在不改变视频点播中流 媒体服务器已有硬件配置的基础上,提高流媒体服务器的服务能力,诸如单位时间内的I/O 吞吐量、对用户的点播请求的及时响应以及流媒体服务器的服务时间。本具体实施方式
中,还包括一种流媒体服务器,包括上述流媒体文件的存储装置。以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定 本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在 不脱离本发明构思的前提下做出若干替代或明显变型,而且性能或用途相同,都应当视为 属于本发明的保护范围。
权利要求
一种流媒体文件的存储方法,其特征在于将流媒体服务器的内存中的一部分空间模拟成模拟硬盘,将所述流媒体文件存储于所述模拟硬盘中;所述一部分空间的大小为所述流媒体文件的大小。
2.根据权利要求1所述的流媒体文件的存储方法,其特征在于所述流媒体服务器包 括至少两个内存盘设备;所述将流媒体服务器的内存中的一部分空间模拟成模拟硬盘包括 以下步骤1)在所述内存中开辟一个单位容量的空间;2)调用多个内存盘设备;3)将所述 调用的多个内存盘设备直接模拟成模拟硬盘或做成RAID;其中,所述单位容量与所述内存 盘设备的个数的乘积大于等于所述流媒体文件的大小。
3.根据权利要求2所述的流媒体文件的存储方法,其特征在于所述调用的内存盘设 备的个数根据做成的RAID的模式选择。
4.根据权利要求3所述的流媒体文件的存储方法,其特征在于所述调用的内存盘设 备的个数为5个;所述做成的RAID为RAID5。
5.根据权利要求1所述的流媒体文件的存储方法,其特征在于所述流媒体文件为所 述流媒体服务器中视频点播的热点文件。
6.根据权利要求1-5任意一项所述的流媒体文件的存储方法,其特征在于所述流媒 体服务器中安装有掉电储备电源。
7.一种流媒体文件的存储装置,其特征在于所述存储装置包括时序控制模块、模拟 模块和存储动作模块;所述时序控制模块控制所述模拟模块和所述存储动作模块的工作时序;所述模拟模块将流媒体服务器的内存中的一部分空间模拟成模拟硬盘;所述存储动作模块将所述流媒体文件存储于所述模拟硬盘中;其中,所述一部分空间的大小为所述流媒体文件的大小;所述时序控制模块的第一输出端连接所述模拟模块的输入端,所述模拟模块的输出端 连接所述时序控制模块的第一输入端;所述时序控制模块的第二输出端连接所述存储动作 模块的输入端。
8.根据权利要求7所述的流媒体文件的存储装置,其特征在于所述流媒体服务器包 括至少两个内存盘设备;所述模拟模块包括单位容量开辟模块、调用模块和转换模块,所述 单位容量开辟模块在所述内存中开辟一个单位容量的空间;所述调用模块调用多个内存盘 设备,所述内存盘的个数与所述单位容量的乘积大于等于所述流媒体文件的大小;所述转 换模块将所述调用模块调用的多个内存盘设备模拟成模拟硬盘或做成RAID。
9.根据权利要求8所述的流媒体文件的存储装置,其特征在于所述调用模块调用的 内存盘设备的个数根据转换模块做成的RAID的模式选择。
10.根据权利要求9所述的流媒体文件的存储装置,其特征在于所述调用模块调用的 内存盘设备的个数为5个;所述转换模块做成的RAID为RAID5。
11.根据权利要求7所述的流媒体文件的存储装置,其特征在于所述流媒体文件为所 述流媒体服务器中视频点播的热点文件。
12.根据权利要求7-11任意一项所述的流媒体文件的存储装置,其特征在于所述流 媒体服务器中安装有掉电储备电源。
13.一种流媒体服务器,其特征在于包括权利要求7-11中任一所述的流媒体文件的存储装置。
全文摘要
本发明公开了一种流媒体文件的存储方法、存储装置及流媒体服务器,将内存虚拟化成可操作设备,然后将流媒体服务器中流媒体文件存放在虚拟化后的内存上,内存上读取数据没有I/O性能的制约以及读取速度较快的优点,因此可保证流媒体服务器单位时间内的I/O吞吐量较大,从而能满足高拜访次数的应用要求以及快速响应用户点播请求的应用要求,提高流媒体服务器的服务能力。本发明的存储方法和存储装置中,通过将流媒体文件存放在虚拟化后的内存上来提高流媒体服务器的服务能力,不再需要像现有技术那样通过优化硬件配置增加硬件成本来实现,达到了流媒体服务器在已有硬件配置的基础上提高服务能力的目的。
文档编号H04L29/06GK101944377SQ201010255568
公开日2011年1月12日 申请日期2010年8月17日 优先权日2010年8月17日
发明者叶志祥, 陈国峰, 高翔 申请人:深圳市同洲电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1