一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于视频热度的资源预分发方法和装置与流程

2021-10-29 23:03:00 来源:中国专利 TAG:分发 资源 热度 装置 音频视频


1.本发明涉及音频视频资源预分发技术领域,具体涉及一种基于视频热度的资源预分发方法和装置。


背景技术:

2.现有的视频点播技术,将音频和视频资源部署在内容服务器中,利用媒体托管服务、经由内容分发网络(cdn)服务向终端用户分发视频资源。当用户对某一视频资源进行点播时,该用户的用户设备才会向网络设备发起视频资源请求。现有的基于p2p网络的视频点播技术,只有当用户对某一个视频资源进行点播时,用户设备中才会存储对应的视频资源内容,并在后续向其他p2p节点分享视频资源。现有的基于边缘云计算的视频点播技术,可以充当廉价cdn节点或者p2p网络中的超级节点的角色为用户提供视频资源和内容。
3.对于视频内容的运营商来说,每种方法的实现成本不同,例如,cdn运营商通常以峰值流量使用收费,一般是每兆每秒(mb/s)来收取费用,而边缘云计算通常按照单台设备的租赁时长和带宽占用来计算成本,而基于p2p的视频资源分发成本仅在于实现p2p功能对应的服务器支出成本。分发的成本还取决于分发方法的性质。例如,通过单播传输方式的cdn网络分发需要的视频资源内容的,使得分发成本与观众数量成比例的增加。而p2p网络对用户数量不太敏感,甚至在一定范围内可以实现随着用户数量增加而成本降低。每种分发方法的时效性和可靠性也不完全相同,例如内容分发网络的时效性和可靠性最高,通常只需要几分钟便可以完成资源的预分发。p2p网络的时效性和可靠性最差,通常需要几小时甚至几天才能完成内容的分发。如何最大化的利用每种渠道的带宽和存储空间,降低视频资源文件的分发成本,是视频内容运营商需要密切关注和优先解决的问题。
4.另一方面,不同的视频资源的播放热度不一。例如,较新上映或者评价较高和用户口碑较好的热门视频资源内容会以较大的概率被终端用户观看,这会导致大量的用户同时请求和获取该热门视频资源,而一些偏冷门、受欢迎程度较低的视频资源被孤立。同时,视频资源的热度是一个实时动态变化的属性,可能随着时间的增长而发生改变。例如,某个视频可能在一个特定时间段内受欢迎,而在另外一个时间段内受欢迎程度降低。另外,视频热度可能随着区域和用户群体的不同而不同,在某区域和某个用户群体受欢迎的视频在另外一个区域或者另外一个用户群体变得不受欢迎。一般来说,视频内容运营商可以通过用户观看行为、播放历史、评论数量等指标实时计算或估算视频的热度。
5.如何根据实时视频热度合理制定视频资源分发策略和分发方案是提高分发效率,降低分发成本的重要途径。


技术实现要素:

6.有鉴于此,本发明实施例提供一种基于视频热度的资源预分发方法和装置,以降低服务器在向用户分发视频数据时的网络压力。
7.为实现上述目的,本发明实施例提供如下技术方案:
8.一种基于视频热度的资源预分发方法,包括:
9.获取待分发视频资源的热度描述数据和维度数据;
10.基于所述热度描述数据和维度数据计算所述待分发视频资源对应的目标分布占比和目标分发时间窗口;
11.基于所述目标分布占比和所述目标分发时间窗口,确定所述待分发视频资源的分发目的地和分发路径;
12.基于所述分发目的地和分发路径将所述待分发视频资源分发至所述分发目的地,所述分发目的地为具有存储功能的网络节点。
13.可选的,上述基于视频热度的资源预分发方法中,所述热度描述数据包括但不限于视频热度数值、热度变化梯度、区域标识和优先权标识中一项或多项的组合。
14.可选的,上述基于视频热度的资源预分发方法中,所述确定所述待分发视频资源的分发目的地和分发路径之后,还包括:
15.获取与所述分发目的地和所述分发路径所对应的分发方案;
16.基于每个所述分发方案对应的预设指标对所述分发方案进行优先级排序;
17.将优先级最高的分发方案作为目标分发方案;
18.所述基于所述分发目的地和分发路径将所述待分发视频资源分发至所述分发目的地,具体为,基于所述目标分发方案将所述待分发视频资源分发至所述分发目的地。
19.可选的,上述基于视频热度的资源预分发方法中,所述获取待分发视频资源的热度描述数据之前,还包括:
20.基于待分发视频资源对应的用户观看数据、播放历史数据和评论数量计算得到与所述待分发视频资源对应的热度描述数据。
21.一种基于视频热度的资源预分发装置,包括:
22.描述数据采集单元,用于获取待分发视频资源的热度描述数据和维度数据;
23.第一计算单元,用于基于所述热度描述数据和维度数据计算所述待分发视频资源对应的目标分布占比和目标分发时间窗口;
24.第二计算单元,用于基于所述目标分布占比和所述目标分发时间窗口,确定所述待分发视频资源的分发目的地和分发路径;
25.分发单元,用于基于所述分发目的地和分发路径将所述待分发视频资源分发至所述分发目的地,所述分发目的地为具有存储功能的网络节点。
26.可选的,上述基于视频热度的资源预分发方法中,所述热度描述数据包括但不限于视频热度数值、热度变化梯度、区域标识和优先权标识中一项或多项的组合。
27.可选的,上述基于视频热度的资源预分发方法中,所述分发单元还用于:
28.获取与所述分发目的地和所述分发路径所对应的分发方案;
29.基于每个所述分发方案对应的预设指标对所述分发方案进行优先级排序;
30.将优先级最高的分发方案作为目标分发方案;
31.所述基于所述分发目的地和分发路径将所述待分发视频资源分发至所述分发目的地,具体为,基于所述目标分发方案将所述待分发视频资源分发至所述分发目的地。
32.可选的,上述基于视频热度的资源预分发方法中,描述数据采集单元在获取待分发视频资源的热度描述数据之前,还用于:
33.基于待分发视频资源对应的用户观看数据、播放历史数据和评论数量计算得到与所述待分发视频资源对应的热度描述数据。
34.基于上述技术方案,本发明实施例提供的上述方案,在用户调取所述视频资源之前,本技术先基于待分发视频资源的热度描述数据和维度数据计算得到所述待分发视频资源对应的目标分布占比和目标分发时间窗口,然后再基于所述目标分布占比和目标分发时间窗口计算得到待分发视频资源的分发目的地和分发路径,然后基于所述分发目的地和分发路径将所述待分发视频资源分发至所述分发目的地,从而实现了视频资源的预分发,合理利用分发目的地的存储能量,前置视频资源文件,降低cdn带宽使用,提高了视频资源的传输效率,优化起播速度,减少视频播放卡顿,提升用户体验。
附图说明
35.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
36.图1为本技术实施例公开的基于视频热度的资源预分发方法的应用场景示意图;
37.图2为本技术实施例公开的基于视频热度的资源预分发方法的流程示意图;
38.图3为本技术实施例公开的热度描述数据表的示意图;
39.图4为网络节点之间的资源分发方案的示意图;
40.图5为本技术另一实施例公开的基于视频热度的资源预分发方法的流程示意图;
41.图6为本技术实施例提供的一种资源分发拓扑图;
42.图7为本技术实施例公开的基于视频热度的资源预分发装置的结构示意图。
具体实施方式
43.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
44.视频资源预分发是一种将用户可能请求的视频资源文件提前分发到cdn网络节点、边缘云计算节点或者p2p网络节点的技术。通过视频资源的预分发技术,还可以有效避免因大量并发的网络请求造成拥堵。
45.针对于背景技术中所提出的上述问题,本技术公开了一种基于视频热度的资源预分发方法,其应用场景可以参见图1所示,在该场景中,包括视频资源文件夹、预分发调度器、边缘云网络、cdn网络和p2p网络,所述预分发调度器加载有本技术实施例公开的基于视频热度的资源预分发方法,其在获取到待分发视频资源的视频热度信息后,基于该信息进行一系列的分析计算,最终实现视频资源的预分发,参见图2,该方法具体包括:
46.步骤s101:获取待分发视频资源的热度描述数据和维度数据;
47.在本方案中,可以预先建立一个视频资源库,所述视频资源库中的内容是动态更新的,本方案中由所述视频资源库中调取需要预分发的视频资源,当然,也可以将所述服务
器对应的所有的视频数据均视为该视频资源库中的视频数据,此时,所述服务器对应的所有的视频数据均有可能时需要预分发的视频数据,在本方案中,当需要预分发一个视频数据时,首先,需要获取他的热度描述数据和维度数据,所述热度描述数据指的是用于表征视频热度的数据,例如,其可以包括视频热度数值数据、热度变化梯度数据、区域标识数据和优先权标识数据等信息。对于某个视频来说,不同的用户组具有不同的热度。在本方案中,可以预先建立一个热度表,将这些数据存储在该热度表中,建立视频数据与该热度表之间的一一对应关系,例如,参见图2,图2为本技术实施例提供的一种热度表的表现形式,在执行本步骤时,直接调取与所述待分发视频资源相匹配的热度描述数据即可。根据这些信息,可以构建视频在不同用户组的实时热度列向量h=[h1,h2,h3,

,h
n
],其中n表示用户分组的个数。当有多个视频时,可以构造出视频和用户组的实时热度矩阵m=[h1,h2,h,...,h
m
]其中m表示待分发的视频个数,矩阵的列表示不同的用户分组,行表示不同的视频。该矩阵表示不同视频在不同用户分组的当前热度信息。
[0048]
类似的,可以构建出视频在不同用户组的归一化的视频热度梯度列向量k=[k1,k2,k3,

,k
n
]和归一化的热度梯度矩阵l=[h1,h2,h3,...,h
m
]。该矩阵表示不同视频在不同用户分组的热度变化趋势。
[0049]
所述维度数据,包括用户占比、兴趣标签、地理位置和运营商等用户基本信息的特征维度数据。这些数据通常可以通过用户所在的ip、运营商信息和采集的用户信息等已有数据分析得出。需要指出的是,每个用户具有一个唯一标识,可以同时归属于多个用户组。也就是说,不同用户组所包含的用户可能存在重叠。根据用户组组内包含的用户数量等信息,可以确定用户组的权归一化向量g=[g1,g2,g3,

,g
n
,]。其中所有用户组的权重分量相加的总和为1,即满足约束
[0050]
根据用户的偏好特征和历史行为,可以构建出用户组之间的热度传递矩阵i
n
×
n
={w
ij
}。该矩阵是行数和列数都为n的方阵(n为分组个数),矩阵的元素w
ij
表示分组i内的用户对于分组j用户的热度传递因子。其值的实际含义是指一个用户群对于另外一个用户群的视频热度影响或者口碑传递,因为一个视频总是先在一个或者多个用户群中率先受欢迎赢得用户口碑,然后逐步扩大到其他用户群。
[0051]
步骤s102:基于所述热度描述数据和维度数据计算所述待分发视频资源对应的目标分布占比和目标分发时间窗口;
[0052]
在本步骤中,基于所述热度描述数据和维度数据计算计算目标分布占比和目标分发时间窗口的具体过程为:
[0053]
根据当前热度矩阵m和热度梯度矩阵l,以及热度传递矩阵i,可以计算出t个单位时间之后的视频热度矩阵m

。计算公式为m

=m ti
·
l。
[0054]
根据视频热度矩阵,乘以一个预分发系数s可以计算得到所述待分发视频资源对应的目标分布占比矩阵r

=s
·
m

。预分发系数可以是一个正常量,也可以是通过某种经验规则或者计算公式计算得到。其含义为视频热度到视频的目标分布占比的比例系数。一般来说,视频热度越高,我们期望预分发的视频资源分布占比越高。
[0055]
我们用矩阵r表示当前实际的视频资源分发占比,初始值为零矩阵。根据上述的热度矩阵变化公式,目标分发时间窗口可以定义为从当前时间开始,还需要经过多少个单位时间,使得视频的热度值为1。也就是说,需要在[0,t]的时间窗口内完成某个视频到某个目
标用户分组的分发任务。因为不同视频在不同用户组的热度值到达为1的时间周期是不一样的。因此可以得到视频分发时间窗口矩阵t={t
ij
},其中t
ij
表示视频i到用户分组j的分发时间窗口的终点时间。
[0056]
步骤s103:基于所述目标分布占比和所述目标分发时间窗口,确定所述待分发视频资源的分发目的地和分发路径;
[0057]
在本步骤中,将所述目标分布占比和所述目标分发时间窗口作为约束条件,计算所述待分发视频资源的分发目的地和分发路径的具体过程为,图6所示:
[0058]
以图6所示的资源分发拓扑图为例。该网络拓扑图可以使用图论的有向图来描述。其中每条边e表示一种可选的分发子路径e。每条分发子路径具有包含传输方式、传输协议、带宽上线、传输成本等固有属性。每个路径从源站到用户组的可选路径可以表示一条完整的分发路径e。路径e通常包含若干条子路径,“源站

cdn运营商1

边缘节点2

用户组1”的分发路径可以表示为即e={e1,e4,e11}
[0059]
在给定的时间窗口范围内,可以将时间窗口分成若干个子区间,比如以5分钟为最小单位进行拆分,在每个最小单元内,每个路径的带宽上限和分发成本是已知的。设u
mtk
表示视频m在路径k上的时间子区间t上的分发时占用的带宽,c
tk
表示在路径k上子时间区间t上的分发成本,则视频的总分发成本可以表示为
[0060][0061]
同时需要满足以下约束:
[0062]
1)视频需要在给定的时间窗口分发完成,即视频的总分发时间t的不超过该视频分发的最大时间窗口;
[0063]
2)视频m到指定用户组g的分发比例不低于预定值;
[0064]
3)分发路径k在指定子时间区间t的带宽不超过上限;
[0065]
4)视频m在分发子路径k上分发行为有效的前提是,分发子路径k的起始节点至少有一条从源站到该节点的连通路径。
[0066]
3)同一个视频在一条分发子路径上的起始分发时间不得早于上一分发子路径的结束分发时间。
[0067]
对上述公式和约束对问题进行建模并求解,获取一个使得总的视频分发成本相对较低的解,即可得到一个所需的分发方案。
[0068]
步骤s104:基于所述分发目的地和分发路径将所述待分发视频资源分发至所述分发目的地;
[0069]
本步骤中,所述分发目的地为具有存储功能的网络节点,当所述分发目的地和分发路径确定以后,基于所述分发目的地和分发路径下发所述待分发视频资源,实现所述待分发视频资源的预分发,在本步骤中,所述分发目的地指的是网络节点,所述网络节点可以为cdn网络节点、边缘云计算节点或者p2p网络节点等中的一项或多项,通过合理利用边缘云节点存储,前置视频资源文件,降低cdn带宽使用;通过合理利用cdn闲时带宽,在不增加成本的前提下可最大化利用cdn带宽,在用户主动向服务器请求所述待分发视频资源之前,将所述待分发视频资源发送至所述分发目的地,此时,当获取到用户的视频资源调取指令
时,可以直接由所述分发目的地向用户分发视频资源,提高了视频资源的分发效率。
[0070]
在本方案中,在用户调取所述视频资源之前,本技术先基于待分发视频资源的热度描述数据和维度数据计算得到所述待分发视频资源对应的目标分布占比和目标分发时间窗口,然后再基于所述目标分布占比和目标分发时间窗口计算得到待分发视频资源的分发目的地和分发路径,然后基于所述分发目的地和分发路径将所述待分发视频资源分发至所述分发目的地,从而实现了视频资源的预分发,合理利用分发目的地的存储能量,前置视频资源文件,降低cdn带宽使用,提高了视频资源的传输效率,优化起播速度,减少视频播放卡顿,提升用户体验。
[0071]
在本方案中,参见图4,基于所述分发目的地和分发路径可以得到多个分发方案,每个分发方案可以包括多条资源分发路径,对于每个资源分发路径而言,又包含多个子节点和子路径。每个分发路径和子路径可以定量计算出其对应的分发成本,在本方案中,可以选择一个优选的分发方案对所述视频资源进行分发,具体的上述方案中,参见图5,所述确定所述待分发视频资源的分发目的地和分发路径之后,还包括:
[0072]
步骤s201:获取与所述分发目的地和所述分发路径所对应的分发方案;
[0073]
步骤s202:基于每个所述分发方案对应的预设指标对所述分发方案进行优先级排序;
[0074]
在本步骤中,获取每个分发方案对应的预设指标,不同的分发方案对应的预设指标的具体值不同,在本方案中,基于所述预设指标对各个分发方案进行优先级排序,优先级越高,被选中的可能性越大。
[0075]
在本方案中,所述预设指标可以指的是分发成本,该分发成本具体基于每个分发路径和子路径定量计算出的分发成本,分发路径不同,对应的分发成本不同,当然,所述预设指标也可以指的是由该路径分发视频所需要的分发时间。
[0076]
步骤s203:将优先级最高的分发方案作为目标分发方案;
[0077]
在本方案中,将所述优先级最高的分发方案作为目标分发方案,在基于所述分发目的地和分发路径将所述待分发视频资源分发至所述分发目的地时,具体基于所述目标分发方案将所述待分发视频资源分发至所述分发目的地。
[0078]
在本方案中,视频内容运营商可以通过用户观看行为、播放历史、评论数量等指标实时计算或估算视频的热度描述数据。因此,本方案中,在所述获取待分发视频资源的热度描述数据之前,还包括:基于待分发视频资源对应的用户观看数据、播放历史数据和评论数量计算得到与所述待分发视频资源对应的热度描述数据。
[0079]
本实施例中公开了一种基于视频热度的资源预分发装置,所述分发装置中的各个单元的具体工作内容,请参见上述方法实施例的内容,下面对本发明实施例提供的基于视频热度的资源预分发装置进行描述,下文描述的基于视频热度的资源预分发装置与上文描述的基于视频热度的资源预分发方法可相互对应参照。
[0080]
参见图6,本技术实施例公开的一种基于视频热度的资源预分发装置,包括:
[0081]
描述数据采集单元100,其与上述方法中步骤s101相对应,用于获取待分发视频资源的热度描述数据和维度数据;
[0082]
第一计算单元200,其与上述方法中步骤s102相对应,用于基于所述热度描述数据和维度数据计算所述待分发视频资源对应的目标分布占比和目标分发时间窗口;
[0083]
第二计算单元300,其与上述方法中步骤s103相对应,用于基于所述目标分布占比和所述目标分发时间窗口,确定所述待分发视频资源的分发目的地和分发路径;
[0084]
分发单元400,其与上述方法中步骤s104相对应,用于基于所述分发目的地和分发路径将所述待分发视频资源分发至所述分发目的地。
[0085]
所述分发单元还用于:
[0086]
获取与所述分发目的地和所述分发路径所对应的分发方案;
[0087]
基于每个所述分发方案对应的预设指标对所述分发方案进行优先级排序;
[0088]
将优先级最高的分发方案作为目标分发方案;
[0089]
所述分发单元在基于所述分发目的地和分发路径将所述待分发视频资源分发至所述分发目的地时,具体用于,基于所述目标分发方案将所述待分发视频资源分发至所述分发目的地。
[0090]
与上述方法相对应,所述描述数据采集单元在获取待分发视频资源的热度描述数据之前,还用于:
[0091]
基于待分发视频资源对应的用户观看数据、播放历史数据和评论数量计算得到与所述待分发视频资源对应的热度描述数据。
[0092]
为了描述的方便,描述以上系统时以功能分为各种模块分别描述。当然,在实施本发明时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
[0093]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0094]
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0095]
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd

rom、或技术领域内所公知的任意其它形式的存储介质中。
[0096]
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要
素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0097]
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜