CN110493643B - 视频存储方法及装置 - Google Patents
视频存储方法及装置 Download PDFInfo
- Publication number
- CN110493643B CN110493643B CN201910721136.4A CN201910721136A CN110493643B CN 110493643 B CN110493643 B CN 110493643B CN 201910721136 A CN201910721136 A CN 201910721136A CN 110493643 B CN110493643 B CN 110493643B
- Authority
- CN
- China
- Prior art keywords
- video
- videos
- time period
- cached
- access
- 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
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000004891 communication Methods 0.000 description 14
- 238000004590 computer program Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000002354 daily effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44204—Monitoring of content usage, e.g. the number of times a movie has been viewed, copied or the amount which has been watched
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明实施例提供了一种视频存储方法,可以依据请求访问的视频的历史访问数据,确定用于预测该视频的未来访问量的观测时间段,然后预测在未来统计周期的观测时间段内视频的访问量,作为未来访问量,若该视频的未来访问量大于缓存区中视频的未来访问量最小值,则删除缓存区中的未来访问量最小的视频,存储用户请求访问的视频。利用上述方式存储的视频,通常在未来一个时间段内被用户访问的访问量大于已删除视频的访问量,使得边缘服务器的缓存空间被合理的利用。
Description
技术领域
本发明涉及互联网技术领域,特别是涉及一种视频存储方法及装置。
背景技术
随着网络的发展,互联网已经成为我们日常生活工作中必不可少的一部分,用户观看网络视频的规模也不断扩大。相关技术中的视频存储方法是,当用户请求访问某个视频时,用户端发送访问请求到边缘服务器,边缘服务器查询自身是否存储有访问请求所请求访问的视频,如果已存储,则将该视频发送给用户端,如果没有存储,则向中心服务器发送上述访问请求,中心服务器根据该访问请求,向边缘服务器返回用户请求访问的视频,边缘服务器再将该视频发送给用户端,并在本地存储该视频。如果边缘服务器缓存容量不足,则删除边缘服务器中最早被存储的视频,然后存储用户请求访问的该视频。当所存储的用户请求访问的视频下一次被访问时,可以直接从边缘服务器中获取该视频,用户等待时间较短。
相关技术中存在的问题是,边缘服务器中新存储的视频以及被删除的视频在未来被用户访问的访问量不确定,如果新存储的视频被用户访问的访问量很低,而被删除的视频被用户访问的访问量较高,则存储该视频使边缘服务器的缓存空间没有被合理利用。
发明内容
本发明实施例的目的在于提供一种视频存储方法及装置,以实现提升新存储的视频被用户访问的访问量,合理利用边缘服务器的缓存空间。具体技术方案如下:
第一方面,本发明实施例提供了一种视频存储方法,包括:
依据请求访问的视频的历史访问数据,判断所述视频是否局部访问稳定,所述局部访问稳定表示所述视频被相邻两次访问的时间间隔低于预设时长;
若是,基于选取的所述视频在指定的统计周期内的历史访问数据,将在所述指定的统计周期的历史访问量高于预设访问量的预设时间段,确定为观测时间段;
预测所述视频以及边缘服务器中的各已缓存视频,在未来统计周期的所述观测时间段内的访问量,作为未来访问量;
当所述视频的所述未来访问量大于所述各已缓存视频的最低未来访问量时,删除所述各已缓存视频中未来访问量最小的已缓存视频,存储所述视频。
在一个实施例中,所述观测时间段为以用户端发送访问请求的时间点为起始时间点的时间段。
在一个实施例中,所述统计周期为一天;
所述基于选取的所述视频在指定统计周期内的历史访问数据,将在所述指定统计周期的历史访问量高于预设访问量的预设时间段,确定为观测时间段,包括:
选取所述视频的在指定的一天的历史访问数据;并将在该天的历史访问量高于预设访问量的预设时间段,确定为观测时间段;或者
选取所述视频的在指定的多天的历史访问数据;并基于该多天中每天的预设时间段的历史访问量,计算该预设时间段的平均历史访问量;以及将平均历史访问量高于预设访问量的预设时间段,确定为观测时间段。
在一个实施例中,在所述依据请求访问的视频的历史访问数据,判断所述视频是否局部访问稳定之后,还包括:
若否,确定边缘服务器中的各已缓存视频的最小关联次数和次小关联次数、除所述各已缓存视频之外的被访问过视频的最大关联次数、以及所述视频的关联次数,所述视频的关联次数,表示所述视频与其它每个视频被同一用户访问的用户数量总和;
若所述视频的关联次数大于所述最小关联次数,删除所述各已缓存视频中关联次数最小的已缓存视频,存储所述视频;
若所述最大关联次数大于所述次小关联次数,删除所述各已缓存视频中次小关联次数对应的视频,存储除所述各已缓存视频之外的被访问过视频中关联次数最大的视频。
在一个实施例中,所述方法还包括:
若所述视频的关联次数不大于所述最小关联次数,且所述最大关联次数大于所述最小关联次数,删除所述各已缓存视频中关联次数最小的已缓存视频,存储除所述各已缓存视频之外的被访问过视频中关联次数最大的视频。
在一个实施例中,存储所述视频后,所述方法还包括:
若所述视频下一次被请求访问,确定所述边缘服务器中的各已缓存视频的最小关联次数,以及各已缓存视频之外的被访问过视频的最大关联次数;
若所述各已缓存视频的最小关联次数小于所述已缓存视频之外的被访问过视频的最大关联次数,存储所述最大关联次数对应的视频。
第二方面,本发明实施例提供了一种视频存储装置,包括:
判断模块,用于依据请求访问的视频的历史访问数据,判断所述视频是否局部访问稳定,所述局部访问稳定表示所述视频被相邻两次访问的时间间隔低于预设时长;
确定模块,用于若所述视频局部访问稳定,基于选取的所述视频在指定的统计周期内的历史访问数据,将在所述指定的统计周期的历史访问量高于预设访问量的预设时间段,确定为观测时间段;
预测模块,用于预测所述视频以及边缘服务器中的各已缓存视频,在未来统计周期的所述观测时间段内的访问量,作为未来访问量;
存储模块,用于当所述视频的所述未来访问量大于所述各已缓存视频的最低未来访问量时,删除所述各已缓存视频中未来访问量最小的已缓存视频,存储所述视频。
在一个实施例中,所述观测时间段为以用户端发送访问请求的时间点为起始时间点的时间段。
在一个实施例中,所述统计周期为一天;
所述确定模块,具体用于选取所述视频的、在指定的一天的历史访问数据;并将在该天的历史访问量高于预设访问量的预设时间段,确定为观测时间段;或者,选取所述视频的在指定的多天的历史访问数据;并基于该多天中每天的预设时间段的历史访问量,计算该预设时间段的平均历史访问量;以及将平均历史访问量高于预设访问量的预设时间段,确定为观测时间段。
在一个实施例中,所述确定模块,还用于若所述视频局部访问不稳定,确定边缘服务器中的各已缓存视频的最小关联次数和次小关联次数、除所述各已缓存视频之外的被访问过视频的最大关联次数、以及所述视频的关联次数,所述视频的关联次数,表示所述视频与其它每个视频被同一用户访问的用户数量总和;
所述存储模块,还用于若所述视频的关联次数大于所述最小关联次数,删除所述各已缓存视频中关联次数最小的已缓存视频,存储所述视频;
所述存储模块,还用于若所述最大关联次数大于所述次小关联次数,删除所述各已缓存视频中次小关联次数对应的视频,存储除所述各已缓存视频之外的被访问过视频中关联次数最大的视频。
在一个实施例中,所述存储模块,还用于若所述视频的关联次数不大于所述最小关联次数且所述最大关联次数大于所述最小关联次数,删除所述各已缓存视频中关联次数最小的已缓存视频,存储除所述各已缓存视频之外的被访问过视频中关联次数最大的视频。
在一个实施例中,所述确定模块,还用于若所述视频下一次被请求访问,确定所述边缘服务器中的各已缓存视频的最小关联次数,以及各已缓存视频之外的被访问过视频的最大关联次数;
所述存储模块,还用于若所述各已缓存视频的最小关联次数小于所述已缓存视频之外的被访问过视频的最大关联次数,存储所述最大关联次数对应的视频。
第三方面,本发明实施例提供一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一所述的视频存储方法步骤。
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的视频存储方法步骤。
第五方面,本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的视频存储方法步骤。
本发明实施例提供的视频存储方法,可以依据请求访问的视频的历史访问数据,确定用于预测该视频的未来访问量的观测时间段,然后预测在未来统计周期的观测时间段内视频的访问量,作为未来访问量,若该视频的未来访问量大于缓存区中视频的未来访问量最小值,则删除缓存区中的未来访问量最小的视频,存储用户请求访问的视频。利用上述方式存储的视频,通常在未来一个时间段内被用户访问的访问量大于已删除视频的访问量,使得边缘服务器的缓存空间被合理的利用。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种视频存储方法的流程图;
图2为本发明实施例提供的视频存储方法的另一种流程图;
图3为本发明实施例提供的一种视频存储装置示意图;
图4为本发明实施例提供的一种电子设备结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
随着网络的发展,互联网已经成为我们日常生活工作中必不可少的一部分。高速增长的视频数据传输需求给互联网带来了巨大的数据传输压力,导致了网络拥堵,并影响了视频播放应用的用户体验。因此,如何合理利用边缘服务器进行内容缓存,成为减轻数据传输压力的研究焦点。本发明为视频网络的分布式边缘缓存服务器提供了一种视频存储方法,如图1所示,包括如下步骤:
步骤101、依据请求访问的视频的历史访问数据,判断该视频是否局部访问稳定,局部访问稳定表示视频被相邻两次访问的时间间隔低于预设时长。
在本步骤中,历史访问数据中可以包含视频特征数据、视频被访问的时间点、用户的访问的视频id、用户访问视频的次数等等。当用户请求观看某个视频时,边缘服务器可以接收到用户的访问请求,然后查找请求访问的视频的历史数据,可以依据历史数据判断该视频是否局部访问稳定。具体的,可以依据历史数据中用户对该视频的访问次数以及访问时间判断该视频是否局部访问稳定,其中,局部访问稳定表示视频被相邻两次访问的时间间隔低于预设时长,例如,若预设时长为5分钟,如果在一个时间段内,比如18点-21点内,视频被访问的相邻时间的间隔均低于3分钟,则判定该视频局部访问稳定。
步骤102、若是,基于选取的视频在指定的统计周期内的历史访问数据,将在指定的统计周期的历史访问量高于预设访问量的预设时间段,确定为观测时间段。
在本步骤中,若上述视频局部访问稳定,则可以选取该视频的一个时间段的历史访问数据,例如,选取近10天中某一天的历史访问数据,假设预设访问量为10000次,则将在选定这一天中,历史访问量高于10000次的时间段,确定为观测时间段。
步骤103、预测视频以及边缘服务器中的各已缓存视频,在未来统计周期的观测时间段内的访问量,作为未来访问量。
在本步骤中,由于观测时间段已经确定,可以预测用户请求访问的视频以及边缘服务器中存储的视频,在未来一天或者未来几个小时中观测时间段内的访问量,将预测到的访问量作为视频可能实现的未来访问量。
步骤104、当视频的未来访问量大于各已缓存视频的最低未来访问量时,删除各已缓存视频中未来访问量最小的已缓存视频,存储该视频。
在本步骤中,可以将预测的已缓存视频的未来访问量进行比较,确定已缓存视频的最低未来访问量,将最低未来访问量与请求访问的视频的未来访问量进行比较,当请求访问的视频的未来访问量大于最低未来访问量时,将最低未来访问量对应的视频删除,存储用户请求访问的视频。
本发明实施例提供的视频存储方法,可以依据请求访问的视频的历史访问数据,确定用于预测该视频的未来访问量的观测时间段,然后预测在未来统计周期的观测时间段内视频的访问量,作为未来访问量,若该视频的未来访问量大于缓存区中视频的未来访问量最小值,则删除缓存区中的未来访问量最小的视频,存储用户请求访问的视频。利用上述方式存储的视频,通常在未来一个时间段内被用户访问的访问量大于已删除视频的访问量,使得边缘服务器的缓存空间被合理的利用。
下面结合附图,用具体实施例对本发明提供的方法进行详细描述,如图2所示,给出视频存储方法的另一种流程图,包括如下步骤:
步骤201、边缘服务器接收用户发送的访问请求。
步骤202、接收到用户发送的访问请求后,判断访问的视频是否已存储在该边缘服务器中。
若否,则进入步骤203,若是,则进入步骤213。
步骤203、边缘服务器从中心服务器提取请求访问的视频的历史数据。
其中,历史数据可以包括视频被访问的时间、视频被访问的次数,每个用户访问视频的视频id和访问次数以及视频特征数据等,在本步骤中,可以从当前被访问的视频的历史数据中提取该视频被访问的时间记录。
步骤204、依据历史数据,判断请求访问的视频是否局部访问稳定。
如何判断视频是否局部访问稳定可参照步骤101,此处不再赘述。
如果是,进入步骤205,如果否,进入步骤208:
步骤205、基于选取的视频在指定的统计周期内的历史访问数据,将在指定的统计周期的历史访问量高于预设访问量的预设时间段,确定为观测时间段。
在本步骤中,为了能够获取适合预测视频未来访问量的时间长度,即观测时间段,可以选取一段时间内的历史访问数据,通过历史访问数据中视频的访问量来确定观测时间段。
其中,上述统计周期可以为一天。具体的,可以选取视频的在指定的一天的历史访问数据;并将在该天的历史访问量高于预设访问量的预设时间段,确定为观测时间段;例如:
在一段时间内,视频的热点生命周期在每一天呈现着相似的状态,因此可以根据一段时间内历史一天的访问记录,确定用于观测未来访问量的观测时间段。其中,观测时间段可以以用户端发送访问请求的时间点为起始时间点,可以将起始时间点之后的统计周期分为等长的多个时间段,计算每个时间段内视频的历史访问量,如果某个时间段内的视频历史访问量低于预设访问量,则将该时间段的起始时间点,作为观测时间段的结束时间点。也可以从用户端发送访问请求的时间点开始,每隔一段时长,例如每隔10分钟计算一次访问量,若访问低于预设访问量,则将上个10分钟的结束时间点,确认为观测时间段的结束时间点。
或者,在另一个实施例中,还可以选取视频的在指定的多天的历史访问数据;并基于该多天中每天的预设时间段的历史访问量,计算该预设时间段的平均历史访问量;以及将平均历史访问量高于预设访问量的预设时间段,确定为观测时间段。
在本实施例中,可以选取视频的最近10天的历史访问数据,将每天的时间分为等时长的时间段,计算10天中每个时间段的平均历史访问量,若平均历史访问量高于预设访问量,则将该时间段确定为观测时间段。
从而可以得到一个对应的值表,例如表1所示,每一个起始时间点都对应着一个未来观测时间段。
表1未来观测时间段对应表
Now_time | 1点 | 4点 | 7点 | 10点 | 13点 | 16点 | 19点 | 21点 | 24点 |
Sight_time | 360m | 360m | 180m | 180m | 160m | 180m | 160m | 120m | 160m |
步骤206、预测请求访问的视频以及边缘服务器中的各已缓存视频,在未来统计周期的观测时间段内的访问量,作为未来访问量。
在本步骤中,假设用户端发送访问请求的当前时间是19点,则由步骤204可知,可以预测19点之后的160min中内的该视频的未来访问量,以及预测该时间段内,边缘服务器中各个已缓存视频的未来访问量。
步骤207、当请求访问的视频的未来访问量大于各已缓存视频的最低未来访问量时,删除各已缓存视频中未来访问量最小的已缓存视频,存储该请求访问的视频。
在本步骤中,假设某个边缘服务器内存已满,并且服务器中存储有5个视频:视频A、视频B、视频C、视频D、视频E,若收到用户请求观看视频F。
此时,边缘服务器需要提取该视频F的历史访问记录,根据上述步骤确定观测时间段,如未来1小时,则预测未来1小时内该视频F和边缘服务器中5个视频分别对应的访问量,形成未来访问量表2。确定边缘服务器中未来访问量最小值为4,然后判断最小值是否大于当前视频F的未来访问量,显然4<7,所以将视频E删除,存储视频F。然后可以更新历史访问数据。
表2视频未来访问量表
视频 | 未来1小时访问量 |
A | 10 |
B | 12 |
C | 13 |
D | 15 |
E | 4 |
F | 7 |
若视频的未来访问量不大于各已缓存视频的最低未来访问量,则可以更新历史访问数据。
步骤208、确定边缘服务器中的各已缓存视频的最小关联次数和次小关联次数、除各已缓存视频之外的被访问过视频的最大关联次数、以及上述请求访问的视频的关联次数,请求访问的视频的关联次数,表示该视频与其它每个视频被同一用户访问的用户数量总和。
在本步骤中,假设某个边缘服务器内存已满,并且服务器中有5个视频,与之对应的访问用户如表3所示:
表3缓存视频及访问用户表
序号 | 缓存文件 | 访问用户 |
1 | A | U1、U2 |
2 | B | U1 |
3 | C | U3 |
4 | D | U4 |
5 | E | U4 |
若收到用户U2请求观看视频F。
此时,边缘服务器需要提取该视频F的历史访问记录,具体的可以是访问过该视频的用户记录,可以得到关联视频表。其中,视频的关联次数表示该视频与其它每个视频被同一用户访问的用户数量总和,例如用户U1访问了视频A和B,那么它们之间的关联次数为1,用户U3只有自己访问了视频C,那么视频C与其它视频没有关联,所以关联次数为0。即,如果两个视频Vi,Vj,被同一个用户Um访问Um(Vi,Vj),那么它们的关联次数C(Vi,Vj)为1;如果多个用户都访问这两个视频,则这两个视频关联次数为用户个数,计算公式如下,其中n为用户总数。
以此类推,就形成了所有视频(包含当前请求视频)的关联次数表,如表4所示。
表4关联次数表
视频 | A | B | C | D | E | F | All |
A | None | 1 | 0 | 0 | 0 | 1 | 2 |
B | 1 | None | 0 | 0 | 0 | 0 | 1 |
C | 0 | 0 | None | 0 | 0 | 0 | 0 |
D | 0 | 0 | 0 | None | 1 | 0 | 1 |
E | 0 | 0 | 0 | 1 | None | 0 | 1 |
F | 1 | 0 | 0 | 0 | 0 | None | 1 |
可以得出,最小关联次数为0,次小关联次数1,请求访问的视频F的关联次数也为1。计算除存储在该边缘服务器的视频外的其他视频的关联次数,确定其他视频中的最大关联次数方法同上,此处不再赘述。
步骤209、判断请求访问的视频的关联次数是否大于缓存区中最小关联次数。
在本步骤中,选择关联次数最小的视频C,与当前视频F的关联次数1比较,显然,视频F的关联次数大于视频C的关联次数。
若是,进入步骤210,若否,进入步骤212:
步骤210、删除各已缓存视频中关联次数最小的已缓存视频,存储请求访问的视频。
在本步骤中,可以删除视频C,存储视频F。此时边缘服务器缓存区中的视频情况如表5所示:
表5更新后的缓存视频及访问用户表
然后可以对历史访问数据进行更新。
步骤211、删除各已缓存视频中次小关联次数对应的视频,存储除各已缓存视频之外的被访问过视频中关联次数最大的视频。
在本步骤中,次小关联次数即为仅次于最小关联次数的数值。可以删除边缘服务器中存储的次小关联次数对应的视频,存储各已缓存视频之外的被访问过视频中关联次数最大的视频,若次小关联次数对应的视频有多个,则可以选择其中存储时间最早的一个视频删除。可以理解,本步骤与步骤210之间没有严格的先后顺序。
步骤212、若请求访问的视频的关联次数不大于所述最小关联次数,且最大关联次数大于最小关联次数,删除各已缓存视频中关联次数最小的已缓存视频,存储除各已缓存视频之外的被访问过视频中关联次数最大的视频。
在本步骤中,假设某个边缘服务器内存已满,并且服务器中有5个视频,与之对应的访问用户如上述表5所示。
若用户U3请求观看视频A、B、E、F。
此时,需要提取上述视频的历史访问记录,假设视频C为已缓存视频之外的被访问过视频的关联次数最大的视频,得到下表6。
表6关联次数表
视频 | A | B | C | D | E | F | All |
A | None | 2 | 1 | 0 | 1 | 2 | 6 |
B | 2 | None | 1 | 0 | 1 | 1 | 5 |
C | 1 | 1 | None | 0 | 1 | 1 | 4 |
D | 0 | 0 | 0 | None | 1 | 0 | 1 |
E | 1 | 1 | 1 | 1 | None | 1 | 5 |
F | 2 | 1 | 1 | 0 | 1 | None | 5 |
边缘服务器中关联次数最小值为1,非边缘服务器中的其他视频中最大关联次数为4,可见,视频C的关联次数大于视频D的关联次数,所以C被访问的机会高于D,因此将视频D删除,将视频C提前存储至边缘服务器,更新后的边缘服务器中视频情况如表7所示:
表7更新后的缓存视频及访问用户表
序号 | 缓存文件 | 访问用户 |
1 | A | U1、U2、U3 |
2 | B | U1、U3 |
3 | C | U3 |
4 | E | U3、U4 |
5 | F | U2、U3 |
同样,存储视频后可以对历史访问数据进行更新,若最大关联次数不大于最小关联次数,也可以更新历史访问数据。
步骤213、确定边缘服务器中的各已缓存视频的最小关联次数,以及各已缓存视频之外的被访问过视频的最大关联次数。
在本步骤中,如果请求访问的视频已经存储在该边缘服务器中,则可以直接向用户返回该视频的数据。并可以根据历史访问记录,计算边缘服务器中的各已缓存视频的最小关联次数,以及各已缓存视频之外的被访问过视频的最大关联次数计算方式同步骤207中的计算方式,此处不再赘述。
步骤214、若各已缓存视频的最小关联次数小于已缓存视频之外的被访问过视频的最大关联次数,存储最大关联次数对应的视频。
在本步骤中,即将边缘服务器中关联次数最小的视频,与非边缘服务器中关联次数最大的视频进行了替换。
上述实施例提供的视频存储方法,通过分析请求访问的视频的稳定性,该视频与其他视频之间的关联关系,以及该视频的热点访问周期情况,在边缘服务器中存储关联次数高的视频,或者存储未来访问量高的视频,从而提高视频在边缘服务器的存储命中率,即提高在未来某一时间段视频被用户访问的概率。如果被存储的视频下一次被用户访问,则无需向距离较远的中心服务器获取视频,可以降低数据传输时间,减少用户等待时间,提高用户体验质量,有效地利用了边缘服务器的存储空间。
基于同一发明构思,本发明实施例提供了一种视频存储装置,其结构示意图如图3所示,包括:
判断模块30,用于依据请求访问的视频的历史访问数据,判断请求访问的视频是否局部访问稳定,局部访问稳定表示视频被相邻两次访问的时间间隔低于预设时长;
确定模块31,用于若请求访问的视频局部访问稳定,基于选取的请求访问的视频在指定的统计周期内的历史访问数据,将在指定的统计周期的历史访问量高于预设访问量的预设时间段,确定为观测时间段;
预测模块32,用于预测请求访问的视频以及边缘服务器中的各已缓存视频,在未来统计周期的观测时间段内的访问量,作为未来访问量;
存储模块33,用于当请求访问的视频的未来访问量大于各已缓存视频的最低未来访问量时,删除各已缓存视频中未来访问量最小的已缓存视频,存储请求访问的视频。
在一个实施例中,观测时间段为以用户端发送访问请求的时间点为起始时间点的时间段。
在一个实施例中,统计周期为一天;
确定模块31,具体用于选取请求访问的视频的、在指定的一天的历史访问数据;并将在该天的历史访问量高于预设访问量的预设时间段,确定为观测时间段;或者,选取请求访问的视频的在指定的多天的历史访问数据;并基于该多天中每天的预设时间段的历史访问量,计算该预设时间段的平均历史访问量;以及将平均历史访问量高于预设访问量的预设时间段,确定为观测时间段。
在一个实施例中,确定模块31,还用于若请求访问的视频局部访问不稳定,确定边缘服务器中的各已缓存视频的最小关联次数和次小关联次数、除各已缓存视频之外的被访问过视频的最大关联次数、以及请求访问的视频的关联次数,请求访问的视频的关联次数,表示该请求访问的视频与其它每个视频被同一用户访问的用户数量总和;
存储模块33,还用于若请求访问的视频的关联次数大于最小关联次数,删除各已缓存视频中关联次数最小的已缓存视频,存储请求访问的视频;
存储模块33,还用于若最大关联次数大于次小关联次数,删除各已缓存视频中次小关联次数对应的视频,存储除各已缓存视频之外的被访问过视频中关联次数最大的视频。
在一个实施例中,确定模块31,还用于若视频的关联次数不大于最小关联次数,从除各已缓存视频之外的被访问过视频的关联次数中,确定最大关联次数;
存储模块33,还用于若请求访问的视频的关联次数不大于最小关联次数且最大关联次数大于最小关联次数,删除各已缓存视频中关联次数最小的已缓存视频,存储除各已缓存视频之外的被访问过视频中关联次数最大的视频。
在一个实施例中,确定模块31,还用于若上述请求访问的视频下一次被请求访问,确定边缘服务器中的各已缓存视频的最小关联次数,以及各已缓存视频之外的被访问过视频的最大关联次数;
存储模块33,还用于若各已缓存视频的最小关联次数,小于已缓存视频之外的被访问过视频的最大关联次数,存储最大关联次数对应的视频。
本发明实施例还提供了一种电子设备,如图4所示,包括处理器41、通信接口42、存储器43和通信总线44,其中,处理器41,通信接口42,存储器43通过通信总线44完成相互间的通信,
存储器43,用于存放计算机程序;
处理器41,用于执行存储器43上所存放的程序时,实现如下步骤:
依据请求访问的视频的历史访问数据,判断请求访问的视频是否局部访问稳定,局部访问稳定表示视频被相邻两次访问的时间间隔低于预设时长;
若是,基于选取的请求访问的视频在指定的统计周期内的历史访问数据,将在指定的统计周期的历史访问量高于预设访问量的预设时间段,确定为观测时间段;
预测请求访问的视频以及边缘服务器中的各已缓存视频,在未来统计周期的观测时间段内的访问量,作为未来访问量;
当请求访问的视频的未来访问量大于各已缓存视频的最低未来访问量时,删除各已缓存视频中未来访问量最小的已缓存视频,存储请求访问的视频。
在一个实施例中,观测时间段为以用户端发送访问请求的时间点为起始时间点的时间段。
在一个实施例中,统计周期为一天;
基于选取的请求访问的视频在指定统计周期内的历史访问数据,将在指定统计周期的历史访问量高于预设访问量的预设时间段,确定为观测时间段,包括:
选取请求访问的视频的在指定的一天的历史访问数据;并将在该天的历史访问量高于预设访问量的预设时间段,确定为观测时间段;或者
选取请求访问的视频的在指定的多天的历史访问数据;并基于该多天中每天的预设时间段的历史访问量,计算该预设时间段的平均历史访问量;以及将平均历史访问量高于预设访问量的预设时间段,确定为观测时间段。
在一个实施例中,在依据请求访问的视频的历史访问数据,判断视频是否局部访问稳定之后,还包括:
若否,确定边缘服务器中的各已缓存视频的最小关联次数和次小关联次数、除所述各已缓存视频之外的被访问过视频的最大关联次数、以及请求访问的视频的关联次数,请求访问的视频的关联次数,表示该请求访问的视频与其它每个视频被同一用户访问的用户数量总和;
若请求访问的视频的关联次数大于最小关联次数,删除各已缓存视频中关联次数最小的已缓存视频,存储请求访问的视频;
若最大关联次数大于次小关联次数,删除各已缓存视频中次小关联次数对应的视频,存储除各已缓存视频之外的被访问过视频中关联次数最大的视频。
在一个实施例中,上述方法还包括:
若请求访问的视频的关联次数不大于最小关联次数,从除各已缓存视频之外的被访问过视频的关联次数中,确定最大关联次数;
若请求访问的视频的关联次数不大于最小关联次数且上述最大关联次数大于最小关联次数,删除各已缓存视频中关联次数最小的已缓存视频,存储除各已缓存视频之外的被访问过视频中关联次数最大的视频。
在一个实施例中,存储请求访问的视频后,上述方法还包括:
若该请求访问的视频下一次被请求访问,确定边缘服务器中的各已缓存视频的最小关联次数,以及各已缓存视频之外的被访问过视频的最大关联次数;
若各已缓存视频的最小关联次数小于已缓存视频之外的被访问过视频的最大关联次数,存储最大关联次数对应的视频。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一视频存储方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一视频存储方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、计算机可读存储介质、计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (6)
1.一种视频存储方法,其特征在于,包括:
依据请求访问的视频的历史访问数据,判断所述视频是否局部访问稳定,所述局部访问稳定表示所述视频被相邻两次访问的时间间隔低于预设时长;
若是,基于选取的所述视频在指定的统计周期内的历史访问数据,将在所述指定的统计周期的历史访问量高于预设访问量的预设时间段,确定为观测时间段;
预测所述视频以及边缘服务器中的各已缓存视频,在未来统计周期的所述观测时间段内的访问量,作为未来访问量;
当所述视频的所述未来访问量大于所述各已缓存视频的最低未来访问量时,删除所述各已缓存视频中未来访问量最小的已缓存视频,存储所述视频;
其中,所述观测时间段为以用户端发送访问请求的时间点为起始时间点的时间段;通过将所述起始时间点之后的统计周期分为等长的多个时间段,每间隔所述时间段,计算视频的一次历史访问量;如果当前时间段的历史访问量低于预设访问量,则将当前时间段的起始时间点,作为观测时间段的结束时间点;或者,
所述统计周期为一天;所述基于选取的所述视频在指定的统计周期内的历史访问数据,将在所述指定的统计周期的历史访问量高于预设访问量的预设时间段,确定为观测时间段,包括:
选取所述视频的在指定的一天的历史访问数据;并将在该天的历史访问量高于预设访问量的预设时间段,确定为观测时间段;或者
选取所述视频的在指定的多天的历史访问数据;并基于该多天中每天的预设时间段的历史访问量,计算该预设时间段的平均历史访问量;以及将平均历史访问量高于预设访问量的预设时间段,确定为观测时间段。
2.根据权利要求1所述的方法,其特征在于,在所述依据请求访问的视频的历史访问数据,判断所述视频是否局部访问稳定之后,还包括:
若否,确定边缘服务器中的各已缓存视频的最小关联次数和次小关联次数、除所述各已缓存视频之外的被访问过视频的最大关联次数、以及所述视频的关联次数,所述视频的关联次数,表示所述视频与其它每个视频被同一用户访问的用户数量总和;
若所述视频的关联次数大于所述最小关联次数,删除所述各已缓存视频中关联次数最小的已缓存视频,存储所述视频;
若所述最大关联次数大于所述次小关联次数,删除所述各已缓存视频中次小关联次数对应的视频,存储除所述各已缓存视频之外的被访问过视频中关联次数最大的视频。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若所述视频的关联次数不大于所述最小关联次数,且所述最大关联次数大于所述最小关联次数,删除所述各已缓存视频中关联次数最小的已缓存视频,存储除所述各已缓存视频之外的被访问过视频中关联次数最大的视频。
4.根据权利要求1所述的方法,其特征在于,存储所述视频后,所述方法还包括:
若所述视频下一次被请求访问,确定所述边缘服务器中的各已缓存视频的最小关联次数,以及各已缓存视频之外的被访问过视频的最大关联次数;
若所述各已缓存视频的最小关联次数小于所述已缓存视频之外的被访问过视频的最大关联次数,存储所述最大关联次数对应的视频。
5.一种视频存储装置,其特征在于,包括:
判断模块,用于依据请求访问的视频的历史访问数据,判断所述视频是否局部访问稳定,所述局部访问稳定表示所述视频被相邻两次访问的时间间隔低于预设时长;
确定模块,用于若所述视频局部访问稳定,基于选取的所述视频在指定的统计周期内的历史访问数据,将在所述指定的统计周期的历史访问量高于预设访问量的预设时间段,确定为观测时间段;
预测模块,用于预测所述视频以及边缘服务器中的各已缓存视频,在未来统计周期的所述观测时间段内的访问量,作为未来访问量;
存储模块,用于当所述视频的所述未来访问量大于所述各已缓存视频的最低未来访问量时,删除所述各已缓存视频中未来访问量最小的已缓存视频,存储所述视频;
其中,所述观测时间段为以用户端发送访问请求的时间点为起始时间点的时间段,通过将所述起始时间点之后的统计周期分为等长的多个时间段,每间隔所述时间段,计算视频的一次历史访问量;如果当前时间段的历史访问量低于预设访问量,则将当前时间段的起始时间点,作为观测时间段的结束时间点;或者,
所述统计周期为一天;所述确定模块,具体用于选取所述视频的、在指定的一天的历史访问数据;并将在该天的历史访问量高于预设访问量的预设时间段,确定为观测时间段;或者,选取所述视频的在指定的多天的历史访问数据;并基于该多天中每天的预设时间段的历史访问量,计算该预设时间段的平均历史访问量;以及将平均历史访问量高于预设访问量的预设时间段,确定为观测时间段。
6.根据权利要求5所述的装置,其特征在于,所述确定模块,还用于若所述视频局部访问不稳定,确定边缘服务器中的各已缓存视频的最小关联次数,以及所述视频的关联次数,所述视频的关联次数,表示所述视频与其它每个视频被同一用户访问的用户数量总和;
所述存储模块,还用于若所述视频的关联次数大于所述最小关联次数,删除所述各已缓存视频中关联次数最小的已缓存视频,存储所述视频。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910721136.4A CN110493643B (zh) | 2019-08-06 | 2019-08-06 | 视频存储方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910721136.4A CN110493643B (zh) | 2019-08-06 | 2019-08-06 | 视频存储方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110493643A CN110493643A (zh) | 2019-11-22 |
CN110493643B true CN110493643B (zh) | 2020-12-15 |
Family
ID=68550083
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910721136.4A Expired - Fee Related CN110493643B (zh) | 2019-08-06 | 2019-08-06 | 视频存储方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110493643B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101079727A (zh) * | 2006-05-24 | 2007-11-28 | 中兴通讯股份有限公司 | 一种流媒体数据内容管理方法 |
CN103957419A (zh) * | 2014-05-21 | 2014-07-30 | 中国农业大学 | 一种双缓冲存储器结构的视频解码器及控制方法 |
CN109413694A (zh) * | 2018-09-10 | 2019-03-01 | 北京邮电大学 | 一种基于内容流行度预测的小小区缓存方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8886769B2 (en) * | 2013-01-18 | 2014-11-11 | Limelight Networks, Inc. | Selective content pre-warming in content delivery networks based on user actions and content categorizations |
CN103152389A (zh) * | 2013-02-01 | 2013-06-12 | 华南师范大学 | 应用于云计算机系统中应对高峰访问的方法和装置 |
CN106230944A (zh) * | 2016-08-02 | 2016-12-14 | 合肥奇也信息科技有限公司 | 一种基于云计算机系统的高峰访问的运行装置 |
CN106027685A (zh) * | 2016-08-02 | 2016-10-12 | 合肥奇也信息科技有限公司 | 一种基于云计算机系统的高峰访问的方法 |
-
2019
- 2019-08-06 CN CN201910721136.4A patent/CN110493643B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101079727A (zh) * | 2006-05-24 | 2007-11-28 | 中兴通讯股份有限公司 | 一种流媒体数据内容管理方法 |
CN103957419A (zh) * | 2014-05-21 | 2014-07-30 | 中国农业大学 | 一种双缓冲存储器结构的视频解码器及控制方法 |
CN109413694A (zh) * | 2018-09-10 | 2019-03-01 | 北京邮电大学 | 一种基于内容流行度预测的小小区缓存方法及装置 |
Non-Patent Citations (1)
Title |
---|
超密集网络中基于内容预测的缓存策略研究;黄大纯;《中国优秀硕士学位论文全文数据库 信息科技辑》;20181115(第11期);第33-46页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110493643A (zh) | 2019-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109299144B (zh) | 一种数据处理方法、装置、系统及应用服务器 | |
CN107301215B (zh) | 一种搜索结果缓存方法及装置、搜索方法及装置 | |
WO2020037930A1 (zh) | 信息推荐方法、装置、计算机设备及存储介质 | |
JP5444477B2 (ja) | キャッシングのための方法、サーバ、コンピュータプログラム及びコンピュータプログラム製品 | |
CN109190070B (zh) | 一种数据处理方法、装置、系统及应用服务器 | |
US10599656B1 (en) | Indexing and data storage for realtime and contemporaneous content suggestions | |
CN108319598B (zh) | 数据缓存方法、装置和系统 | |
CN110471939A (zh) | 数据访问方法、装置、计算机设备及存储介质 | |
CN108062418B (zh) | 一种数据搜索方法、装置及服务器 | |
WO2018120876A1 (zh) | 一种搜索缓存更新方法及装置 | |
CN109413694B (zh) | 一种基于内容流行度预测的小小区缓存方法及装置 | |
CN114528231A (zh) | 一种数据动态存储方法、装置、电子设备及存储介质 | |
CN111782692A (zh) | 一种频率控制方法及装置 | |
CN111753239B (zh) | 一种资源分发方法、装置、电子设备及存储介质 | |
CN110858912A (zh) | 流媒体缓存方法和系统、缓存策略服务器、流服务节点 | |
CN107239542A (zh) | 一种数据统计方法、装置、服务器及存储介质 | |
CN111597259A (zh) | 数据存储系统、方法、装置、电子设备及存储介质 | |
WO2024187880A1 (zh) | 一种动态缓存方法、装置、电子设备及计算机可读介质 | |
CN112631963B (zh) | 缓存数据管理方法、装置、设备及存储介质 | |
CN110493643B (zh) | 视频存储方法及装置 | |
CN110708361B (zh) | 数字内容发布用户的等级确定系统、方法、装置及服务器 | |
CN109063015B (zh) | 热点内容的提取方法、装置及设备 | |
CN109828970B (zh) | 一种信息处理方法、装置及电子设备 | |
CN116483750A (zh) | 数据处理方法、装置、计算机可读存储介质及电子设备 | |
US20160055203A1 (en) | Method for record selection to avoid negatively impacting latency |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20201215 Termination date: 20210806 |
|
CF01 | Termination of patent right due to non-payment of annual fee |