CN100571380C - 用于分布式网络电视系统的分散存储方法及该系统 - Google Patents
用于分布式网络电视系统的分散存储方法及该系统 Download PDFInfo
- Publication number
- CN100571380C CN100571380C CNB200710121238XA CN200710121238A CN100571380C CN 100571380 C CN100571380 C CN 100571380C CN B200710121238X A CNB200710121238X A CN B200710121238XA CN 200710121238 A CN200710121238 A CN 200710121238A CN 100571380 C CN100571380 C CN 100571380C
- Authority
- CN
- China
- Prior art keywords
- content
- manager
- node
- destination node
- distributing network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种分布式网络电视系统和用于该系统的分散存储方法。所述分布式网络电视系统包括内容分发网络,所述内容分发网络包括配备有数据库的管理器、一个中心节点和至少一个边缘节点。所述方法包括:所述管理器定时扫描所述数据库中记录的关于所述内容的信息,并搜索在所述内容分发网络中只存在一份拷贝的内容;所述管理器另外选择一个节点作为目标节点;以及,所述管理器将搜索到的内容作为指定内容,将其调度到该目标节点。本发明的方法可以保证在内容分发网络中每个内容都会保存有至少两份拷贝。这样,在单个节点发生故障或达到服务能力上限时,可以从其他节点提供临时服务,保证了系统服务质量。
Description
技术领域
本发明涉及一种分布式网络电视(IPTV,Internet Protocol Television)系统,特别是涉及一种用于分布式网络电视系统的分散存储方法及该系统。
背景技术
内容分发网络(CDN,Content Distribution Network)是IPTV系统中非常重要的模块,其主要负责内容的存储、调度、服务定向等。如图1所示,CDN100主要包括配备有数据库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中内容的信息(例如内容数据表),以搜索在所述内容分发网络中只存在一份拷贝的内容(步骤S10);当搜索到有单份拷贝的内容时(步骤S11),管理器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服务稳定性的目的。然而,根据需要也可将拷贝数量调整到三个或更大,管理器可以根据系统的变化来设定适合的拷贝数量。
应当指出,虽然通过上述实施方式对本发明进行了描述,然而本发明还可有其它多种实施方式。在不脱离本发明精神和范围的前提下,熟悉本领域的技术人员显然可以对本发明做出各种相应的改变和变形,但这些改变和变形都应当属于本发明所附权利要求及其等效物所保护的范围内。
Claims (12)
1、一种用于分布式网络电视系统的分散存储方法,所述分布式网络电视系统包括内容分发网络,所述内容分发网络包括配备有数据库的管理器以及多个用于存储内容的节点,所述节点包括一个可用于接受新发布的内容的中心节点和至少一个边缘节点,
其特征在于,所述方法包括:
所述管理器定时扫描记录在所述数据库中的关于所述内容的信息,并搜索在所述内容分发网络中只存在一份拷贝的内容;
所述管理器另外选择一个节点作为目标节点;以及
所述管理器将搜索到的内容作为指定内容,调度到该目标节点。
2、根据权利要求1所述的分散存储方法,其特征在于,还包括:当向所述中心节点成功发布新内容后,所述管理器选择一个边缘节点作为目标节点,并以该新内容为指定内容,将其调度到该目标节点。
3、根据权利要求1所述的分散存储方法,其特征在于,还包括:
当接收到从一个节点中删除一个内容的请求后,所述管理器先检查该要删除的内容在整个内容分发网络中的拷贝数量;
如果拷贝数量大于管理器设定数,则直接处理该删除请求;以及
如果拷贝数量小于或等于管理器设定数,则由管理器另外选择一个节点作为目标节点,以该要删除的内容为指定内容,将其调度到该目标节点,并在调度成功后再处理该删除请求。
4、根据权利要求3所述的分散存储方法,其特征在于,当接收到所述删除请求、且该要删除的内容在整个内容分发网络中的拷贝数量小于或等于管理器设定数时,所述管理器将该删除请求存放到一请求缓冲队列中;并且,当该要删除的内容成功调度到所述目标节点后,所述管理器从该请求缓冲队列中调出对应的删除请求并进行处理。
5、根据权利要求3所述的分散存储方法,其特征在于,设置该删除请求具有自动重发功能;以及
当接收到删除请求、且该要删除的内容在整个内容分发网络中的拷贝数量小于或等于管理器设定数时,所述管理器忽略该删除请求,并等待该删除请求重新发起。
6、根据权利要求1~5中任一项所述的分散存储方法,其特征在于,所述选择目标节点的步骤包括,选择一个可用存储空间最大的节点作为目标节点。
7、根据权利要求1~5中任一项所述的分散存储方法,其特征在于,所述将该指定内容调度到该目标节点的步骤包括:
所述管理器在所述数据库中添加内容调度任务;以及
所述管理器执行该内容调度任务,将所述指定内容调度到目标节点。
8、根据权利要求7所述的分散存储方法,其特征在于,所述管理器定时扫描待执行的内容调度任务,并在扫描到对应任务时执行该任务。
9、根据权利要求7所述的分散存储方法,其特征在于,在所述内容调度任务执行失败后,所述管理器记录失败结果码。
10、根据权利要求1~5中任一项所述的分散存储方法,其特征在于,所述内容包括录播文件、图片文件和/或声音文件。
11、一种用于分布式网络电视系统的分散存储方法,所述分布式网络电视系统包括内容分发网络,所述内容分发网络包括配备有数据库的管理器以及多个用于存储内容的节点,所述节点包括一个可用于接受新发布的内容的中心节点和至少一个边缘节点,
其特征在于,所述方法包括:
当向所述中心节点成功发布新内容后,所述管理器选择一个边缘节点作为目标节点,并以该新内容为指定内容,将其调度到该目标节点;以及
当接收到从一个节点中删除一个内容的请求后,所述管理器先检查该要删除的内容在整个内容分发网络中的拷贝数量;如果拷贝数量大于管理器设定数,则直接处理该删除请求;如果拷贝数量小于或等于管理器设定数,则由管理器另外选择一个节点作为目标节点,以该要删除的内容为指定内容,将其调度到该目标节点,并在调度成功后再处理该删除请求。
12、一种具有内容分发网络的分布式网络电视系统,所述内容分发网络包括配备有数据库的管理器以及多个用于存储内容的节点,所述节点包括一个可用于接受新发布的内容的中心节点和至少一个边缘节点,
其特征在于,所述管理器包括:
用于定时扫描记录在所述数据库中的关于所述内容的信息、以搜索在所述内容分发网络中只存在一份拷贝的内容的模块;
用于另外选择一个节点作为目标节点的模块;以及
用于将搜索到的内容作为指定内容调度到该目标节点的模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200710121238XA CN100571380C (zh) | 2007-08-31 | 2007-08-31 | 用于分布式网络电视系统的分散存储方法及该系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200710121238XA CN100571380C (zh) | 2007-08-31 | 2007-08-31 | 用于分布式网络电视系统的分散存储方法及该系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101127882A CN101127882A (zh) | 2008-02-20 |
CN100571380C true CN100571380C (zh) | 2009-12-16 |
Family
ID=39095781
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB200710121238XA Expired - Fee Related CN100571380C (zh) | 2007-08-31 | 2007-08-31 | 用于分布式网络电视系统的分散存储方法及该系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100571380C (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5904782B2 (ja) * | 2011-02-23 | 2016-04-20 | 株式会社東芝 | 医療情報管理システム及び医療情報管理方法 |
CN102263986A (zh) * | 2011-08-22 | 2011-11-30 | 中兴通讯股份有限公司 | 网络电视系统中的节目处理方法及装置 |
CN103747046A (zh) * | 2013-12-24 | 2014-04-23 | 乐视网信息技术(北京)股份有限公司 | 一种cdn文件管理方法、分发控制中心及内容分发系统 |
CN105376218B (zh) * | 2015-10-21 | 2020-11-13 | 上海思华科技股份有限公司 | 一种快速响应用户请求的流媒体系统和方法 |
CN105847855A (zh) * | 2016-05-13 | 2016-08-10 | 天脉聚源(北京)传媒科技有限公司 | 一种节目处理方法及系统 |
CN108268209A (zh) * | 2016-12-31 | 2018-07-10 | 深圳市优朋普乐传媒发展有限公司 | 一种cdn系统中的数据存储方法及cdn系统 |
CN111294845B (zh) * | 2020-02-13 | 2023-07-25 | 天翼数字生活科技有限公司 | 节点切换方法、装置、计算机设备和存储介质 |
-
2007
- 2007-08-31 CN CNB200710121238XA patent/CN100571380C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN101127882A (zh) | 2008-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100571380C (zh) | 用于分布式网络电视系统的分散存储方法及该系统 | |
CN101656861B (zh) | 一种录制节目的方法和多媒体系统 | |
CN104967861B (zh) | Cdn网络中的视频缓存系统及方法 | |
US7873609B2 (en) | Contents distribution management system with multi-service type management function and method thereof | |
CN1087558C (zh) | 用于支持按需电视应用的节目预编程 | |
US9445162B2 (en) | Interactive personal/internet protocol television reservation system, reservation plan management method and device | |
CN101022538B (zh) | 点播业务实现方法及相关设备和系统 | |
CN101068341B (zh) | 流媒体调度系统及其媒体文件调度方法 | |
CN101472166B (zh) | 一种内容缓存、查询方法及点对点媒体传输系统 | |
EP2288085A1 (en) | P2p based method, device and system for playing media | |
CN102546711B (zh) | 流媒体系统中的内容存储调整方法、装置及系统 | |
US7877468B2 (en) | Systems and methods for vertically integrated data distribution and access management | |
JP2010187382A (ja) | マルチメディア配信システムにおける競合の解決およびシステムリソースの管理のためのシステムおよび方法 | |
JP2008533816A5 (zh) | ||
US8332472B2 (en) | Peer to peer system for supporting time shift service | |
CN101291425A (zh) | 根据用户点播热度实现内容动态发布的方法及系统 | |
CN101409823A (zh) | 一种网络个人录像机的实现方法、装置和系统 | |
US20020199200A1 (en) | System and method for scheduling the distribution of assets from multiple asset providers to multiple receivers | |
CN101783802A (zh) | 一种分布式流媒体发布系统和方法 | |
CN103220587A (zh) | 一种获取时移内容的方法及装置 | |
CN105471630B (zh) | 大容量分组传送系统下的北向系统消息分发系统及方法 | |
JP2010191774A (ja) | コンテンツ配信システム、コンテンツ配信装置及びコンテンツ配信方法ならびにそのプログラム、データストレージ装置とその処理方法およびプログラム | |
CN101489102A (zh) | 一种设置并执行网络电视内容发布策略的方法及系统 | |
CN102438171B (zh) | 节目源文件处理方法、装置及网络电视系统 | |
KR20060082432A (ko) | 데이터 방송 수신 장치에서의 자원 관리 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20091216 Termination date: 20160831 |