一种多内容中心的数据存储同步方法技术

技术编号:37211509 阅读:18 留言:0更新日期:2023-04-20 23:01
本发明专利技术提供了一种多内容中心的数据存储同步方法,包括以下步骤:将多媒体文件进行切片,形成子文件和索引文件;将所述文件和所述索引文件保存;记录所述索引文件至预设数据库;同步所述数据库。本发明专利技术通过数据库记录存储列表,实现多内容中心存储HLS内容同步,并保持多内容中心存储一致,借助HLS特性,制定特殊的存储m3u8的key格式,通过m3u8找到所有的ts列表索引,并且可清晰知道存储所在的资源池。并且可清晰知道存储所在的资源池。并且可清晰知道存储所在的资源池。

【技术实现步骤摘要】
一种多内容中心的数据存储同步方法


[0001]本申请涉及IT软件存储领域,具体涉及一种多内容中心的数据存储同步方法。

技术介绍

[0002]天翼高清内容中心引入内容后,为了更好的为IPTV用户提供服务,对于点播注入的内容,多会对注入的点播大文件转为HLS的方式存储在存储(CEPH)中,易于分发。但是往往单内容中心又难以满足客户就近访问的需求及故障切换,所以就需要创建多个内容中心存储注入内容满足多中心容灾及用户就近访问。多中心存储内容同步成为了实现的难点,如果采用异地多副本的方式不仅对网络要求较高,故障时还可能影响整个集群。本方案实现多内容中心HLS数据同步,保证多个内容中心存储数据完全一致并且故障互不影响,实现异地中心真正的高可用。

技术实现思路

[0003]本申请实施方式提出了一种多内容中心的数据存储同步方法,以改善上述技术问题。
[0004]本申请实施方式提供了一种多内容中心的数据存储同步方法,包括以下步骤:将多媒体文件进行切片,形成子文件和索引文件;将所述文件和所述索引文件保存;记录所述索引文件至预设数据库;同步所述数据库。
[0005]在一些实施方式中,所述记录所述索引文件至预设数据库,包括:记录所述文件的唯一标识;注入索引文件。
[0006]在一些实施方式中,所述方法还包括:删除所述文件的唯一标识。
[0007]在一些实施方式中,述同步所述数据库内容,包括:获取分布式锁,若未获取所述分布式锁,则遍历moive表。
[0008]在一些实施方式中,所述遍历moive表限制为1000条。
[0009]在一些实施方式中,所述方法还包括,对比所述数据库中的storage与通过服务配置storage信息,两个list取差集,若配置的storage信息都在数据库中的storage中,则无需同步,直接更新同步任务状态为已完成。
[0010]在一些实施方式中,若需要同步,则将所述信息写入同步的消息队列。
[0011]在一些实施方式中,判断遍历的数据是否为最后一条数据,若不是最后一条数据,则再次对比所述数据库中的storage与通过服务配置storage信息。
[0012]在一些实施方式中,所述同步所述数据库,还包括:读取队列,获取需要同步的任务,获取HLS的m3u8索引key和内容的存储中心。
[0013]在一些实施方式中,所述方法还包括:删除任务获取进程;获取遍历的数据信息,放入队列,并更新数据库删除状态为删除中;删除任务处理进程。
[0014]本申请具有以下优势:
[0015]本申请基于数据库方式对于存储在CEPH中的HLS内容实时同步,借助HLS特性,在
数据库中存储m3u8索引key,无需遍历CEPH中的对象,仅通过解析m3u8,即可获取所有内容索引,通过数据库记录存储列表,实现多内容中心存储HLS内容同步,并保持多内容中心存储一致,借助HLS特性,制定特殊的存储m3u8的key格式,通过m3u8找到所有的ts列表索引,并且可清晰知道存储所在的资源池。内容同步及删除都由独立的进程完成,通过消息队列解耦,支持任务获取及任务处理进程动态扩展。需要同步的中心可通过配置文件配置多个,支持增量中心内容同步。
附图说明
[0016]为了更清楚地说明本申请实施方式中的技术方案,下面将对实施方式描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施方式,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0017]图1为本申请实施例提出的一种字段信息示意图;
[0018]图2为本申请实施例提出的另外一种字段信息示意图;
[0019]图3为本申请实施例提出的一种组件逻辑关系示意图;
[0020]图4为本申请实施例提出的一种组件逻辑同步任务获取进程示意图;
[0021]图5为本申请实施例提出的一种组件逻辑同步任务处理进程示意图;
[0022]图6为本申请实施例提出的一种组件逻辑删除任务获取进程示意图;
[0023]图7为本申请实施例提出的一种组件逻辑删除任务处理进程示意图;
[0024]图8为本申请实施例提出的一种Contentid为1的内容示意图。
具体实施方式
[0025]为了使本
的人员更好地理解本申请方案,下面将结合本申请实施方式中的附图,对本申请实施方式中的技术方案进行清楚、完整地描述。显然,所描述的实施方式仅仅是本申请一部分实施方式,而不是全部的实施方式。基于本申请中的实施方式,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本申请保护的范围。
[0026]此外,术语“第一”、“第二”等仅用于区分描述,而不能理解为特指或特殊结构。术语“一些实施方式”、“其他实施方式”等的描述意指结合该实施方式或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施方式或示例中。在本申请中,对上述术语的示意性表述不必须针对的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施方式或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本申请中描述的不同实施方式或示例以及不同实施方式或示例的特征进行结合和组合。
[0027]HLS将多媒体文件或直接流进行切片,形成一堆的ts文件和m3u8索引文件并保存到磁盘或存储。通俗来讲,m3u8索引文件中会记录所有的ts文件列表,通过m3u8文件即可找到所有的ts文件。按HLS技术原理,在数据库只需记录m3u8索引文件内容即可找到所有的ts文件。
[0028]CEPH是一个可靠、自动重均衡、自动恢复的分布式存储系统,根据场景划分可以将
CEPH分为三大块,分别是对象存储、块设备和文件系统服务。本方案主要使用CEPH的对象存储。
[0029]本申请基于数据库方式对于存储在CEPH中的HLS内容实时同步,借助HLS特性,在数据库中存储m3u8索引key,无需遍历CEPH中的对象,仅通过解析m3u8,即可获取所有内容索引,通过数据库记录存储列表,实现多内容中心存储HLS内容同步,并保持多内容中心存储一致。注入数据库设计
[0030]参照HSL技术原理,同步时,数据库记录以下信息:
[0031]Contentid:内容唯一标识
[0032]url:注入内容的索引文件(m3u8)url
[0033]storage(list):当前注入的内容在哪个存储中心,如内容注入时在北京内容中心存储,则记录值为:[“bj”][0034]status(int):当前任务是状态,0:转码处理中,1:转码处理完成,可进行同步
[0035]is_sync:是否同步至其他内容中心,0:待同步,1:同步中,2:同步完成,3:同步失败
[0036]字段信息如图1
[0037]删除数据库设计
[0038本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种多内容中心的数据存储同步方法,其特征在于,包括以下步骤:将多媒体文件进行切片,形成子文件和索引文件;将所述文件和所述索引文件保存;记录所述索引文件至预设数据库;同步所述数据库。2.根据权利要求1所述的方法,其特征在于,所述记录所述索引文件至预设数据库,包括:记录所述文件的唯一标识;注入索引文件。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:删除所述文件的唯一标识。4.根据权利要求1所述的方法,其特征在于,所述同步所述数据库内容,包括:获取分布式锁,若未获取所述分布式锁,则遍历moive表。5.根据权利要求4所述的方法,其特征在于,所述遍历moive表限制为1000条。6.根据权利要求4所述的方法,其特征在于,所述方法还包括,对比所述数据库中的storage与通过服务配置sto...

【专利技术属性】
技术研发人员:苏帅白松苏平宇
申请(专利权)人:天翼云科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1