一种节目文件的整备方法、装置及系统与流程

文档序号:11139342阅读:285来源:国知局
一种节目文件的整备方法、装置及系统与制造工艺

本申请涉及节目播出技术领域,尤其涉及一种节目文件的整备方法、装置及系统。



背景技术:

在播控流程中,节目文件作为最终的播出实体,节目文件的整备业务即是播控系统的核心业务。节目文件的整备过程主要包括一级整备、二级整备、三级整备;而存储整备节目文件的存储服务器,即称为多级存储服务器。

多级存储包含一级存储、二级存储、三级存储三个部分;一级存储是指节目文件迁入到播出系统前的存储系统,主要指媒资系统;二级存储是指节目文件由外系统迁入到播出系统的存储系统;三级存储主要是指视频服务器构成的存储系统。二级存储系统承担了播出节目文件的大部分的缓存及安全整备任务,二级存储系统负责把从媒资系统传来的待播文件进行统一整备,并在规定的时间统一发送到三级存储中的各个视频服务器。

现有技术中,在接收到来自媒资系统的节目文件时,通常在每个存储服务器中各存放整备的一部分节目文件,若有某一存储服务器出现故障,就不能及时提供整备节目文件,会影响到正常的播出任务。



技术实现要素:

本申请实施例中提供了一种节目文件的整备方法、装置及系统,能够解决现有技术中的整备方法中在某一存储服务器出现故障时,影响正常的节目整备的问题。

根据本申请实施例的一个方面,提供了一种节目文件的整备方法,包括:从媒资系统读取节目文件;将该节目文件分别写入第一存储阵列和第二存储阵列,其中,该第一存储阵列和第二存储阵列互为镜像;该第一存储阵列和该第二存储阵列均包括一个或多个存储服务器;确定该节目文件分别在该第一存储阵列的第一任务标识和第一任务状态,以及该第二存储阵列中的第二任务标识和第二任务状态;其中,该任务标识用于标识存储阵列有无该节目文件对应的任务,该任务状态用于标识存储阵列执行该节目文件对应的任务的状态;当根据该节目文件分别在该第一存储阵列的第一任务标识和第一任务状态,以及该第二存储阵列中的第二任务标识和第二任务状态,确定该节目文件在该第一存储阵列和该第二存储阵列整备成功时,确定该节目文件整备完成。

根据本申请实施例的另一个方面,还提供了一种节目文件的整备装置,包括:第一读取模块,用于从媒资系统读取节目文件;第一写入模块,用于将该节目文件分别写入第一存储阵列和第二存储阵列,其中,该第一存储阵列和第二存储阵列互为镜像;该第一存储阵列和该第二存储阵列均包括一个或多个存储服务器;第一确定模块,用于确定该节目文件分别在该第一存储阵列的第一任务标识和第一任务状态,以及该第二存储阵列中的第二任务标识和第二任务状态;其中,该任务标识用于标识存储阵列有无该节目文件对应的任务,该任务状态用于标识存储阵列执行该节目文件对应的任务的状态;第二确定模块,用于在根据该节目文件分别在该第一存储阵列的第一任务标识和第一任务状态,以及该第二存储阵列中的第二任务标识和第二任务状态确定该节目文件在该第一存储阵列和该第二存储阵列整备成功时,确定该节目文件整备完成。

根据本申请的再一个方面,还提供了一种节目文件的整备系统,包括:二级存储系统,用于接收并存储来自媒资系统的节目文件;该二级存储系统包括互为镜像的第一存储阵列和第二存储阵列;三级存储系统,用于接收并存储来自该二级存储系统的节目文件;该三级存储系统包括多个视频服务器集群,各视频服务器集群包括互为镜像的第一视频服务器和第二视频服务器。

采用本申请实施例中提供的节目文件的整备方法、装置及系统,将从媒资系统中读取到的节目文件存储至互为镜像的第一存储阵列和第二存储阵列,并根据该节目文件分别在该第一存储阵列的第一任务标识和第一任务状态,以及该第二存储阵列中的第二任务标识和第二任务状态,确定该节目文件在该第一存储阵列和该第二存储阵列整备成功时,确定该节目文件整备完成;由于在节目整备时,分别将节目文件存储至不同的两个存储阵列,因此,在某一存储阵列出现故障时,可以从另一存储阵列获取到该节目文件,从而能够及时获取该节目文件,减少对节目正常播出的影响。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1示出了根据本申请实施例的节目文件的整备系统的系统框图;

图2示出了本申请实施例一中的节目整备方法的流程图;

图3示出了本申请实施例中的缓冲区的操作逻辑图;

图4中示出了根据本申请实施例二的节目文件的整备装置的结构示意图。

具体实施方式

在实现本申请的过程中,发明人发现,在现有技术中,在接收到来自媒资系统的节目文件时,通常在每个存储服务器中各存放整备的一部分节目文件,若有某一存储服务器出现故障,就不能及时提供整备节目文件,会影响到正常的播出任务。

为解决上述问题,本申请提供了一种节目文件的整备方法、装置及系统,将从媒资系统中读取到的节目文件存储至互为镜像的第一存储阵列和第二存储阵列,并根据该节目文件分别在该第一存储阵列的第一任务标识和第一任务状态,以及该第二存储阵列中的第二任务标识和第二任务状态,确定该节目文件在该第一存储阵列和该第二存储阵列整备成功时,确定该节目文件整备完成;由于在节目整备时,分别将节目文件存储至不同的两个存储阵列,因此,在某一存储阵列出现故障时,可以从另一存储阵列获取到该节目文件,从而能够及时获取该节目文件,减少对节目正常播出的影响。同时,镜像的二级存储作为三级整备的源存储,可以分担读带宽的压力。

为了使本申请实施例中的技术方案及优点更加清楚明白,以下结合附图对本申请的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本申请的一部分实施例,而不是所有实施例的穷举。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

实施例一

图1示出了根据本申请实施例的节目文件的整备系统100的系统框图。

如图1所示,根据本申请实施例一的节目文件的整备系统100包括:二级存储系统102,用于接收并存储来自媒资系统101的节目文件;该二级存储系统102包括互为镜像的第一存储阵列102a和第二存储阵列102b;三级存储系统103,用于接收并存储来自该二级存储系统102的节目文件;该三级存储系统包括两个视频服务器集群103a,103b,视频服务器集群103a包括互为镜像的第一视频服务器103a1和第二视频服务器103a2;视频服务器集群103b包括互为镜像的第一视频服务器103b1和第二视频服务器103b2。

在具体实施时,三级存储系统为了支持多个频道播出可以分为多个视频服务器集群,每个视频服务器集群分别存储不同频道的节目文件。在具体实施时,图1所示的两组集群可以承担20个频道的节目播出,即,每组承担10个频道的播出,每个集群内部包含主视频服务器和备视频服务器,主、备视频服务器采用镜像的方式。在具体实施时,也可以设置更多的集群,或者各集群存储不同数量的频道的节目文件,本申请均不作限制。

在具体实施时,节目文件的整备系统100还可以包括:校验模块,用于对来自媒资系统的节目文件进行MD5校验;以及对来自二级存储系统的节目文件进行MD5校验。

下面将结合图1所示的节目文件的整备系统对根据本申请实施例一的节目整备方法进行详细介绍。

图2示出了本申请实施例一中的节目整备方法的流程图。节目文件在各级存储的迁移和审核流程可分为二级整备、三级整备二个阶段。二级整备阶段是指节目文件首先从例如媒资系统的外系统经过迁移到达二级存储的过程。三级整备阶段是指在二级存储中的节目文件经过审核(人工和MD5校验)通过后执行迁移任务到达视频服务器的过程。

如图2所示,根据本申请实施例一中的节目整备方法包括以下步骤:

S201,从媒资系统读取节目文件。

在具体实施时,可以设置一专用读线程来从媒资系统读取节目文件。

S202,将所述节目文件划分为设定大小的数据块,并分别写入缓冲区的第一缓存队列和第二缓存队列中;其中,第一缓存队列对应于第一存储阵列,第二缓存队列对应的于第二缓存队列。

节目文件由媒资系统迁入二级存储的过程中,本申请中的方案对于源节目文件只读取一次并缓存。

在具体实施时,该设定大小可以是例如4096Byte等的数据大小。

在具体实施时,读线程可以将节目文件划分为设定大小的数据块,再顺序读入缓冲区buffer的两个缓存序列中。

具体地,可以在节目文件存储至第一存储阵列和第二存储阵列之后,再做MD5校验。也可以在存储至第一存储阵列和第二存储阵列之前,提前对缓存的文件执行MD5校验,从而省去重新读取文件的时间。

具体地,当提前执行MD5校验时,该缓冲区除第一缓存队列和第二缓存队列之外,还可以包括对应于MD5校验模块的第三个缓存队列。

在具体实施时,缓冲区的操作逻辑可以如图3所示。

如图3所示,若缓冲区buffer队列信号状态为读线程有信号或读线程等待超时,读线程将buffer中的数据块推送至到三个buffer队列中,同时buffer队列状态变为无信号,推送完成后读线程将buffer队列置为写线程、MD5校验线程有信号。

当buffer队列写线程、MD5校验线程有信号时,写线程、MD5校验线程将buffer队列中第一缓冲队列中的数据拉pop出来,同时buffer队列状态变为无信号,Pop完成后将buffer队列置为读线程有信号,并将Pop的buffer写入数据。

在具体实施时,如果缓存中的节目文件未通过MD5校验,则可以重新执行S201,以向媒资系统请求该节目文件,重新进行二级整备。如果通过MD5校验,则可以执行S203。

S203,分别将第一缓存队列中的数据块顺序写入第一存储阵列、将第二缓存队列中的数据顺序写入第二存储阵列。

S204,根据节目文件在第一存储阵列和第二存储阵列中的任务情况,分别为该节目文件设置任务标识和任务状态;其中,任务标识包括有任务和无任务;任务状态包括成功、失败和执行中。

在具体实施时,任务标识和任务状态的枚举值可以如下表所示。

在上表中,A1表示某一节目文件在第一存储阵列的任务标识,A2表示该节目文件在第一存储阵列的任务状态;B1表示某一节目文件在第二存储阵列的任务标识,B2表示该节目文件在第二存储阵列的任务状态。当A1或B1为0时,表示该节目文件在相应的存储阵列中在预定时间内有过迁移任务,即,写入任务;当A1或B1为1时,表示该节目文件在相应的存储阵列中在预定时间内没有过迁移任务;当A2或B2为0时,表示该节目文件在相应的存储阵列中存储成功;当A2或B2为1时,表示该节目文件在相应的存储阵列中存储失败;当A2或B2为2时,表示该节目文件在相应的存储阵列中正在执行迁移任务。总任务状态是根据前面的A1、B1、A2、B2的值确定的,表明该节目文件的二级整备状态。

S205,根据节目文件分别在第一存储阵列的第一任务标识和第一任务状态,以及第二存储阵列中的第二任务标识和第二任务状态确定节目文件整备成完成。

在具体实施时,通常可能有以下几种情况:

1).第一存储阵列A有任务且任务成功时,第二存储阵列B有任务且任务成功。

状态值标记为:A1=0;B1=0;A2=0;B2=0;总任务状态=0;此时代表二级整备任务完成。

2).A有任务且任务失败时,B有任务且任务失败。

状态值标记为为:A1=0;B1=0;A2=1;B2=1;总任务状态=1。此时代表二级整备任务失败,需重新发起二级整备任务。

3).当A、B均有任务且只有一方任务失败。

例如:A成功B失败,此时状态值标记为:A1=0;B1=0;A2=0;B2=1;总任务状态=0;此时代表二级整备任务完成,但存储B中的文件整备任务失败,可以将文件从存储A迁移至存储B。

发起的新任务执行成功的状态标识值为:A1=1;B1=0;A2=0;B2=0;总任务状态=0.此时文件在存储B的整备任务完成。

在具体实施时,还可以进一步实现第一存储阵列或第二存储阵列的故障恢复机制。

仍然以上述的A、B存储阵列为例。当A故障后,来自缓冲区的节目文件仅能够迁移至B,此时可以记录下仅有B中有文件。当A从故障中恢复后,可以使用文件比对工具,对A、B中存储的节目文件进行差异对比,列出A中缺失的文件,此时可以选择业务闲置期间,发起文件同步任务,将A中缺失的文件从B迁入,从而恢复A、B存储中文件的一致性。

S206,当确定二级整备完成后,进行三级整备。

上述步骤S201至S205为二级整备。

在具体实施时,三级整备是指将节目文件从二级存储阵列迁移到视频服务器的过程。节目文件在做三级整备前,可以在二级存储阵列中进行人工复审。人工复审是指对于将要迁移到视频服务器的节目文件进行人工再检查的过程,通常根据节目单对节目文件执行审核任务,鉴于任务量和节约时间的考虑,人工复审通常根据频道策略对其中一个存储阵列中存储的节目文件进行审核。

对于某一存储阵列A的节目文件执行人工复审后,标记该节目文件为审核通过,后续三级整备过程中可以直接对该节目文件执行迁移动作。

如果节目文件未通过人工复审,则继续审核另一存储阵列B中存储的同一节目文件,如果也未通过审核,则该节目审核失败;若另一存储阵列中的节目文件审核通过则标记该存储阵列中的节目文件为审核通过,并将该节目文件从存储阵列B迁移至A。

人工复审通过后,文件便可根据系统设定的策略执行三级整备。

在具体实施时,三级整备可以包括:从第一存储阵列或第二存储阵列获取节目文件;根据节目单中节目文件对应的播出频道,确定存储节目文件的视频服务器集群;其中,视频服务器集群包括第一视频服务器和第二视频服务器,第一视频服务器和第二视频服务器互为镜像;将节目文件存储至视频服务器集群中的第一视频服务器和第二视频服务器。

在具体实施时,还可以进一步在将节目文件存储至视频服务器集群中的第一视频服务器和第二视频服务器之前,对节目文件执行进行第二MD5校验;若第二MD5校验未通过,则对另一存储阵列中的节目文件执行第三MD5校验。如果第二MD5校验或第三MD5校验通过,则将节目文件存储至视频服务器集群中的第一视频服务器和第二视频服务器;如果第三MD5校验也失败,则该节目文件返回人工复审阶段,并重新对另一存储阵列中存储的同一节目文件做人工审,审核成功后重新执行三级整备任务。

在具体实施时,还可以进一步实现第一视频服务器或第二视频服务器的故障恢复机制。

仍然以上述的视频服务器103a1、103a2为例。当103a1故障后,来自二级存储系统的节目文件仅能够迁移至103a2,此时可以记录下仅有103a2中有文件。当103a1从故障中恢复后,可以使用文件比对工具,对103a1、103a2中存储的节目文件进行差异对比,列出103a1中缺失的文件,此时可以选择业务闲置期间,发起文件同步任务,将103a1中缺失的文件从103a2迁入,从而恢复103a1、103a2存储中文件的一致性。

采用本申请实施例中提供的节目文件的整备方法,将从媒资系统中读取到的节目文件存储至互为镜像的第一存储阵列和第二存储阵列,并根据该节目文件分别在该第一存储阵列的第一任务标识和第一任务状态,以及该第二存储阵列中的第二任务标识和第二任务状态,确定该节目文件在该第一存储阵列和该第二存储阵列整备成功时,确定该节目文件整备完成;由于在节目整备时,分别将节目文件存储至不同的两个存储阵列,因此,在某一存储阵列出现故障时,可以从另一存储阵列获取到该节目文件,从而能够及时获取该节目文件,减少对节目正常播出的影响。同时,镜像的二级存储作为三级整备的源存储,可以分担读带宽的压力。

基于同一发明构思,本申请实施例中还提供了一种节目文件的整备装置,由于该装置解决问题的原理与本申请实施例一所提供的方法相似,因此该装置的实施可以参见方法的实施,重复之处不再赘述。

实施例二

图4中示出了根据本申请实施例二的节目文件的整备装置的结构示意图。

如图4所示,根据根据本申请实施例二的节目文件的整备装置400包括:第一读取模块401,用于从媒资系统读取节目文件;第一写入模块402,用于将该节目文件分别写入第一存储阵列和第二存储阵列,其中,该第一存储阵列和第二存储阵列互为镜像;该第一存储阵列和该第二存储阵列均包括一个或多个存储服务器;第一确定模块403,用于确定该节目文件分别在该第一存储阵列的第一任务标识和第一任务状态,以及该第二存储阵列中的第二任务标识和第二任务状态;其中,该任务标识用于标识存储阵列有无该节目文件对应的任务,该任务状态用于标识存储阵列执行该节目文件对应的任务的状态;第二确定模块404,用于在根据该节目文件分别在该第一存储阵列的第一任务标识和第一任务状态,以及该第二存储阵列中的第二任务标识和第二任务状态确定该节目文件在该第一存储阵列和该第二存储阵列整备成功时,确定该节目文件整备完成。

在具体实施时,第一写入模块,具体可以包括:第一写入子模块,用于将所述节目文件划分为设定大小的数据块,并分别写入缓冲区的第一缓存队列和第二缓存队列中;其中,所述第一缓存队列对应于第一存储阵列,所述第二缓存队列对应的于第二缓存队列;第二写入子模块,用于分别将第一缓存队列中的数据块顺序写入第一存储阵列、将第二缓存队列中的数据顺序写入第二存储阵列。

在具体实施时,缓冲区还可以包括第三缓存队列,所述第三缓存队列对应MD5校验模块;节目文件的整备装置400还可以包括:第一校验模块,用于将该第三缓存队列中的数据块写入MD5校验模块,并执行第一MD5校验;第三确定模块,用于确认该节目文件第一MD5校验通过。

在具体实施时,节目文件的整备装置400还可以包括:设置模块,用于根据该节目文件在该第一存储阵列和第二存储阵列中的任务情况,分别为该节目文件设置任务标识和任务状态;其中,该任务标识包括有任务和无任务;该任务状态包括成功、失败和执行中。

在具体实施时,第二确定模块,具体可以用于在该第一存储阵列有任务且任务成功时,确定该节目文件在该第一存储阵列中整备成功;或者在该第二存储阵列有任务且任务成功时,确定该节目文件在该第二存储阵列中整备成功。

在具体实施时,节目文件的整备装置400,还可以包括:拷贝模块,用于在该第一存储阵列无任务或任务失败、并且该第二存储阵列有任务且任务成功时,将该节目文件从第二存储阵列拷贝至该第一存储阵列;或者当该第一存储阵列有任务且任务成功、并且该第二存储阵列无任务或任务失败时,将该节目文件从第一存储阵列拷贝至该第二存储阵列。

在具体实施时,节目文件的整备装置400,还可以包括:第二读取模块,用于从该第一存储阵列或该第二存储阵列获取该节目文件;第四确定模块,用于根据节目单中该节目文件对应的播出频道,确定存储该节目文件的视频服务器集群;其中,该视频服务器集群包括第一视频服务器和第二视频服务器,该第一视频服务器和该第二视频服务器互为镜像;第三写入模块,用于将该节目文件存储至该视频服务器集群中的第一视频服务器和第二视频服务器。

在具体实施时,节目文件的整备装置400,还可以包括:第二校验模块,用于对该第一存储阵列或该第二存储阵列中的该节目文件进行第二MD5校验;并在该第二MD5校验未通过时,对另一存储阵列中的该节目文件执行第三MD5校验;第五确定模块,用于确认该第二MD5校验或第三MD5校验通过。

采用本申请实施例中提供的节目文件的整备装置,将从媒资系统中读取到的节目文件存储至互为镜像的第一存储阵列和第二存储阵列,并根据该节目文件分别在该第一存储阵列的第一任务标识和第一任务状态,以及该第二存储阵列中的第二任务标识和第二任务状态,确定该节目文件在该第一存储阵列和该第二存储阵列整备成功时,确定该节目文件整备完成;由于在节目整备时,分别将节目文件存储至不同的两个存储阵列,因此,在某一存储阵列出现故障时,可以从另一存储阵列获取到该节目文件,从而能够及时获取该节目文件,减少对节目正常播出的影响。同时,镜像的二级存储作为三级整备的源存储,可以分担读带宽的压力。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1