用于分布式网络电视系统的分散存储方法及该系统的制作方法

文档序号:7656007阅读:106来源:国知局
专利名称:用于分布式网络电视系统的分散存储方法及该系统的制作方法
技术领域
本发明涉及一种分布式网络电视(IPTV, Internet Protocol Television)系统,特别是涉及一种用于分布式网络电视系统的分散存储方法及该系统。
背景技术
内容分发网络(CDN, Content Distribution Network)是IPTV系统中非常 重要的模块,其主要负责内容的存储、调度、服务定向等。如图1所示,CDN 100主要包括配备有数据库12的管理器10以及多个节点。数据库12以例如 数据表的形式存储有CND中所有的内容信息、节点和流媒体设备信息和直播 频道信息等。管理器10负责在全局范围内进行内容调度、服务定向和资源管 理。CDN中的节点通常包括一个中心节点20和至少一个边缘节点30。以中心 节点20为例,每个节点包括至少一个代理,如主代理21,以及多个单元23。 优选地,还可以在节点中设置备用代理22。代理21/22用于接受并处理管理器 10的请求,管理本节点的内容数据和各种资源。每个单元23分别与代理相连, 负责存储内容文件和向外提供服务。单元23可包括流媒体刀片和磁阵。内容在发布时,首先发布到中心节点20。然后,通过自动调度方式,例 如根据用户点播的统计数据,将热点内容推送到边缘节点30;或者,通过手 工方式将内容调度到边缘节点30。CDN在分发内容的同时,还负责存储空间的管理,包括在内容自动调 度时,优先将其调度到剩余磁盘空间较大的节点;当节点的剩余磁盘空间不足 时,自动删除发布时间比较久、点播次数比较少的内容。当用户点播某个内容的时候,CDN会根据该用户所处的位置,优先将该 次请求定向到距离该用户最近的节点。如果所述最近节点上并没有保存所请求 的内容或该节点的服务能力己经达到上限,那么CDN会将该请求定向到所述 最近节点的依赖节点、或者中心节点。在CDN中,内容文件通常存放在网络中的各个节点上。如果内容为热点
内容,则此内容有可能在多个节点上都分别保存有拷贝。如果内容为非热点内容,则可能在整个CDN中只在一个节点上存在一份拷贝。对于第二种情况,如果某个节点发生故障,或者暂时性的达到流媒体服务 器的服务能力上限,则将不能提供点播服务。为了最大限度地避免这种情况的 发生,需要保持每个内容在CDN中至少保存两份拷贝。这样的话,即使单个 节点发生故障或达到服务能力上限,还可以从其他节点提供临时服务。发明内容本发明要解决的技术问题在于,提供一种用于分布式网络电视系统的分散 存储方法,使得在网络电视系统的内容分发网络中,每个内容都有多份拷贝。本发明要解决的另一技术问题在于,提供一种具有内容分发网络的分布式 网络电视系统,使得在该系统中,每个内容都至少保存有多份拷贝。为实现上述目的,本发明提出了一种用于分布式网络电视系统的分散存储 方法。所述分布式网络电视系统包括内容分发网络,所述内容分发网络包括配 备有数据库的管理器以及多个用于存储内容的节点,所述节点包括一个可用于接受新发布的内容的中心节点和至少一个边缘节点。所述方法包括所述管理 器定时扫描所述数据库中记录的关于所述内容的信息,并搜索在所述内容分发 网络中只存在一份拷贝的内容;所述管理器另外选择一个节点作为目标节点; 以及,所述管理器将搜索到的内容作为指定内容,将其调度到该目标节点。所述方法还包括当向所述中心节点成功发布新内容后,所述管理器选择 一个边缘节点作为目标节点,并以该新内容为指定内容,将其调度到该目标节点。所述方法还包括当接收到从一个节点中删除一个内容的请求后,所述管 理器先检査该要删除的内容在整个内容分发网络中的拷贝数量;如果拷贝数量 不小于管理器设定数,则直接处理该删除请求;以及如果拷贝数量小于或等于 管理器设定数,则由管理器另外选择一个节点作为目标节点,以该要删除的内 容为指定内容,将其调度到该目标节点,并在调度成功后再处理该删除请求。其中,当接收到所述删除请求、且该要删除的内容在整个内容分发网络中 的拷贝数量小于或等于管理器设定数时,所述管理器将该删除请求存放到一请 求缓冲队列中;并且,当该要删除的内容成功调度到所述目标节点后,所述管
理器从该请求缓冲队列中调出对应的删除请求并进行处理。或者,设置所述删 除请求具有自动重发功能;当接收到删除请求、且该要删除的内容在整个内容分发网络中的拷贝数量小于或等于管理器设定数时,所述管理器忽略该删除请 求,并等待该删除请求重新发起。优选地,所述选择目标节点的步骤包括,选择一个可用存储空间最大的节 点作为目标节点。优选地,所述将该指定内容调度到该目标节点的步骤包括所述管理器在 所述数据库中添加内容调度任务;以及所述管理器执行该内容调度任务,将所 述指定内容调度到目标节点。其中,所述管理器定时扫描待执行的内容调度任 务,并在扫描到对应任务时执行该任务。优选地,在所述内容调度任务执行失败后,所述管理器记录失败结果码。 在这里,所述内容包括录播文件、图片文件和/或声音文件。 为了实现上述目的,本发明又提供了一种用于分布式网络电视系统的分散 存储方法。所述分布式网络电视系统包括内容分发网络,所述内容分发网络包 括配备有数据库的管理器以及多个用于存储内容的节点,所述节点包括一个可 用于接受新发布的内容的中心节点和至少一个边缘节点。所述方法包括当向 所述中心节点成功发布新内容后,所述管理器选择一个边缘节点作为目标节 点,并以该新内容为指定内容,将其调度到该目标节点;以及当接收到从一个 节点中删除一个内容的请求后,所述管理器先检查该要删除的内容在整个内容 分发网络中的拷贝数量;如果拷贝数量不小于管理器设定数,则直接处理该删 除请求;如果拷贝数量小于或等于管理器设定数,则由管理器另外选择一个节 点作为目标节点,以该要删除的内容为指定内容,将其调度到该目标节点,并 在调度成功后再处理该删除请求。为了实现上述目的,本发明还提供了一种具有内容分发网络的分布式网络 电视系统,所述内容分发网络包括配备有数据库的管理器以及多个用于存储内 容的节点,所述节点包括一个可用于接受新发布的内容的中心节点和至少一个 边缘节点。其中,所述管理器包括用于定时扫描记录在所述数据库中的关于 所述内容的信息、以搜索在所述内容分发网络中只存在一份拷贝的内容的模 块;用于另外选择一个节点作为目标节点的模块;以及用于将搜索到的内容作 为指定内容调度到该目标节点的模块。
利用本发明的分散存储方法可以保证,对于分布式网络电视系统中的任一 内容,在内容分发网络中保存有多份拷贝。这样,在单个节点发生故障或达到 服务能力上限的情况下,可以从其他节点提供临时服务,从而保证了系统服务 质量。此外,本发明的方法不需要增加额外的硬件、实现成本低。下面结合附图和详细实施方式对本发明进行详细说明。


图1为内容分发网络的结构示意图;图2为根据本发明一个实施例,执行分散存储方法的流程图; 图3为根据本发明另一实施例,执行分散存储方法的流程图;以及 图4为根据本发明又一实施例的执行分散存储方法的流程图。
具体实施方式
如图2所示,根据本发明的一个实施例,本发明的分散存储方法包括管理器10定时扫描记录在数据库12中的关于CDN中内容的信息(例如内容数据表),以搜索在所述内容分发网络中只存在一份拷贝的内容(步骤SIO);当搜索到有单份拷贝的内容时(步骤Sll),管理器10另外选择一个节点作 为目标节点(步骤S12),并以搜索到的内容为指定内容,将其调度到该目标 节点中(步骤S13)。在步骤S12中,管理器10可以通过多种策略来选择合 适目标节点,优选地,可以选择可用存储空间最大的节点作为目标节点。在本实施例中,步骤S13可以由以下方式来实现先由管理器10在数据 库12中添加内容调度任务(步骤S14);之后,再由该管理器10执行所述内 容调度任务,将所述指定内容调度到目标节点(步骤S15)。优选地,管理器 可定时扫描待执行的内容调度任务,并在扫描到对应任务时执行该任务。如果 调度任务执行成功,就在所述目标节点中记录该指定内容的拷贝数据(步骤 S16),这样该指定内容在CDN中就有了两份拷贝。如果调度任务执行失败, 则由管理器记录这次失败的结果码(步骤S17),供后续处理使用。当然,对 于将指定内容调度到目标节点的步骤,本领域的技术人员还可以想到其它多种 实现方式。为了实现上述分散存储方法,可以在CDN的管理器中设置用于定时扫描 在所述数据库中记录的关于CDN中内容的信息、以搜索在所述内容分发网络 中只存在一份拷贝的内容的模块;用于另外选择一个节点作为目标节点的模 块;以及用于将搜索到的内容作为指定内容调度到该目标节点的模块。当CDN发布新的内容时,首先会向中心节点20进行发布(步骤S20)。 如果发布成功,则返回布成功信息(步骤S21);如果发布失败,则返回发布 失败信息(步骤S22)。如图3所示,当新内容成功发布后,根据本发明的分 散存储方法,管理器10会自动选择一个边缘节点作为目标节点(歩骤S23), 并以该新内容为指定内容,将其调度到该目标节点(步骤S24)。步骤S23中 的目标节点选择策略与步骤S12的类似,这里不再详述。步骤S24的实现方式与步骤S13类似,这里简单说明如下先由管理器 10在数据库12中添加内容调度任务(步骤S25);再由该管理器10执行所述 内容调度任务,将所述指定内容调度到目标节点(步骤S26);如果调度任务 执行成功,就在所述目标节点中记录该指定内容的拷贝数据(步骤S27);如 果调度任务执行失败,则由管理器记录这次失败的结果码(步骤S28),供后 续处理使用。可见,利用本发明的方法,新发布的内容在CDN中会拥有两份 拷贝。如图4所示,当需要从一个节点单独删除一个内容,即接收到从一个节点 中删除一个内容的请求(步骤S30)后,所述管理器先检査要删除的内容在整 个CDN中的拷贝数量(步骤S31);如果拷贝数量不小于一个管理器预先设 定的数,例如2,则直接处理该删除请求(步骤S32);如果拷贝数量小于或 等于2,则由管理器另外选择一个节点作为目标节点(步骤S33),并以该要 删除的内容为指定内容,将其调度到该目标节点(步骤S34),并在调度成功 后再处理该删除请求(步骤S39)。步骤S33中的目标节点选择策略与步骤S12的类似,这里不再详述。步骤 S34的实现方式与步骤S13类似,这里简单说明如下先由管理器在数据库中 添加内容调度任务(步骤S35);再由管理器执行所述内容调度任务,将所述 指定内容调度到目标节点(步骤S36);如果调度任务执行成功,就在目标节 点中记录该指定内容的拷贝数据(步骤S37);如果调度任务执行失败,则由 管理器记录这次失败的结果码(步骤S38),供后续处理使用。在这里,步骤S39可以由多种方式实现。在一种方式中,当接收到删除请
求、且该要删除内容在整个内容分发网络中的拷贝数量小于或等于2时,管理 器先将该删除请求存放到一请求缓冲队列中。这时,步骤S39具体为在调度成功后,管理器从请求缓冲队列中调出对应的删除请求并进行处理。在另一种方式中,设置所述删除请求具有自动重发功能;当接收到删除请求、且该要删 除内容在整个内容分发网络中的拷贝数量小于或等于2时,管理器忽略该删除 请求,并执行后续步骤S33、 S34。这时,步骤S39具体为等待对应的删除请 求重新发起。之后,再次执行步骤S31。根据本发明的另一实施例,本发明的方法也可以仅包括当CDN发布新的 内容时所采取的步骤(例如图3所示的步骤)和当需要从一个节点单独删除一 个内容时所采取的步骤(例如图4所示的步骤)。这样,可以无需定时扫描数 据库而保证每个内容在CDN中都至少保存有两份拷贝。在这里,所述内容可包括录播文件、图片文件、声音文件和/或其它类型 的文件。下面以录播文件为例,说明本发明方法的具体应用。平时,管理器会 定时扫描录播文件数据表,如果发现某个录播文件在CDN中只存在一份拷贝, 则对该文件生成调度任务,将该文件数据拷贝到其它节点。在一个录播文件生 成之后,管理器自动添加调度任务,将该新生成的文件拷贝到其它节点。当某 个节点需要单独删除某个录播文件的时候,管理器首先在录播文件数据表中检 査该文件在CDN中的拷贝份数,如果拷贝份数小于等于2,则先生成调度任 务,将该文件拷贝到其它节点,然后再执行文件删除操作。这样,对于某一录 播文件来说,在CDN中会维持存在有两个拷贝的状态,从而提高了 CDN的 服务稳定性。以上,以管理器设定数等于2为例具体说明了本发明的方法。可见,当保 证CDN中每个内容都具有两个拷贝时,能够达到提高CDN服务稳定性的目 的。然而,根据需要也可将拷贝数量调整到三个或更大,管理器可以根据系统 的变化来设定适合的拷贝数量。应当指出,虽然通过上述实施方式对本发明进行了描述,然而本发明还可 有其它多种实施方式。在不脱离本发明精神和范围的前提下,熟悉本领域的技 术人员显然可以对本发明做出各种相应的改变和变形,但这些改变和变形都应 当属于本发明所附权利要求及其等效物所保护的范围内。
权利要求
1、一种用于分布式网络电视系统的分散存储方法,所述分布式网络电视系统包括内容分发网络,所述内容分发网络包括配备有数据库的管理器以及多个用于存储内容的节点,所述节点包括一个可用于接受新发布的内容的中心节点和至少一个边缘节点,其特征在于,所述方法包括所述管理器定时扫描记录在所述数据库中的关于所述内容的信息,并搜索在所述内容分发网络中只存在一份拷贝的内容;所述管理器另外选择一个节点作为目标节点;以及所述管理器将搜索到的内容作为指定内容,调度到该目标节点。
2、 根据权利要求1所述的分散存储方法,其特征在于,还包括当向所述中心节点成功发布新内容后,所述管理器选择一个边缘节点作为目标节点, 并以该新内容为指定内容,将其调度到该目标节点。
3、 根据权利要求1所述的分散存储方法,其特征在于,还包括当接收到从一个节点中删除一个内容的请求后,所述管理器先检查该要删除的内容在整个内容分发网络中的拷贝数量;如果拷贝数量不小于管理器设定数,则直接处理该删除请求;以及 如果拷贝数量小于或等于管理器设定数,则由管理器另外选择一个节点作为目标节点,以该要删除的内容为指定内容,将其调度到该目标节点,并在调度成功后再处理该删除请求。
4、 根据权利要求3所述的分散存储方法,其特征在于,当接收到所述删 除请求、且该要删除的内容在整个内容分发网络中的拷贝数量小于或等于管理 器设定数时,所述管理器将该删除请求存放到一请求缓冲队列中;并且,当该 要删除的内容成功调度到所述目标节点后,所述管理器从该请求缓冲队列中调 出对应的删除请求并进行处理。
5、 根据权利要求3所述的分散存储方法,其特征在于,设置该删除请求 具有自动重发功能;以及当接收到删除请求、且该要删除的内容在整个内容分发网络中的拷贝数量 小于或等于管理器设定数时,所述管理器忽略该删除请求,并等待该删除请求 重新发起。
6、 根据权利要求1 5中任一项所述的分散存储方法,其特征在于,所述 选择目标节点的步骤包括,选择一个可用存储空间最大的节点作为目标节点。
7、 根据权利要求1 5中任一项所述的分散存储方法,其特征在于,所述将该指定内容调度到该目标节点的步骤包括所述管理器在所述数据库中添加内容调度任务;以及 所述管理器执行该内容调度任务,将所述指定内容调度到目标节点。
8、 根据权利要求7所述的分散存储方法,其特征在于,所述管理器定时 扫描待执行的内容调度任务,并在扫描到对应任务时执行该任务。
9、 根据权利要求7所述的分散存储方法,其特征在于,在所述内容调度 任务执行失败后,所述管理器记录失败结果码。
10、 根据权利要求1 5中任一项所述的分散存储方法,其特征在于,所 述内容包括录播文件、图片文件和/或声音文件。
11、 一种用于分布式网络电视系统的分散存储方法,所述分布式网络电视 系统包括内容分发网络,所述内容分发网络包括配备有数据库的管理器以及多 个用于存储内容的节点,所述节点包括一个可用于接受新发布的内容的中心节 点和至少一个边缘节点,其特征在于,所述方法包括当向所述中心节点成功发布新内容后,所述管理器选择一个边缘节点作为 目标节点,并以该新内容为指定内容,将其调度到该目标节点;以及当接收到从一个节点中删除一个内容的请求后,所述管理器先检查该要删 除的内容在整个内容分发网络中的拷贝数量;如果拷贝数量不小于管理器设定 数,则直接处理该删除请求;如果拷贝数量小于或等于管理器设定数,则由管 理器另外选择一个节点作为目标节点,以该要删除的内容为指定内容,将其调 度到该目标节点,并在调度成功后再处理该删除请求。
12、 一种具有内容分发网络的分布式网络电视系统,所述内容分发网络包 括配备有数据库的管理器以及多个用于存储内容的节点,所述节点包括一个可 用于接受新发布的内容的中心节点和至少一个边缘节点,其特征在于,所述管理器包括用于定时扫描记录在所述数据库中的关于所述内容的信息、以搜索在所述 内容分发网络中只存在一份拷贝的内容的模块;用于另外选择一个节点作为目标节点的模块;以及 用于将搜索到的内容作为指定内容调度到该目标节点的模块。
全文摘要
本发明公开了一种分布式网络电视系统和用于该系统的分散存储方法。所述分布式网络电视系统包括内容分发网络,所述内容分发网络包括配备有数据库的管理器、一个中心节点和至少一个边缘节点。所述方法包括所述管理器定时扫描所述数据库中记录的关于所述内容的信息,并搜索在所述内容分发网络中只存在一份拷贝的内容;所述管理器另外选择一个节点作为目标节点;以及,所述管理器将搜索到的内容作为指定内容,将其调度到该目标节点。本发明的方法可以保证在内容分发网络中每个内容都会保存有至少两份拷贝。这样,在单个节点发生故障或达到服务能力上限时,可以从其他节点提供临时服务,保证了系统服务质量。
文档编号H04L29/08GK101127882SQ200710121238
公开日2008年2月20日 申请日期2007年8月31日 优先权日2007年8月31日
发明者程加志 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1