CN110677683B - 视频存储、视频访问方法及分布式存储、视频访问系统 - Google Patents
视频存储、视频访问方法及分布式存储、视频访问系统 Download PDFInfo
- Publication number
- CN110677683B CN110677683B CN201910944085.1A CN201910944085A CN110677683B CN 110677683 B CN110677683 B CN 110677683B CN 201910944085 A CN201910944085 A CN 201910944085A CN 110677683 B CN110677683 B CN 110677683B
- Authority
- CN
- China
- Prior art keywords
- user equipment
- video
- information
- target
- server
- 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.)
- Active
Links
Images
Classifications
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/239—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
- H04N21/2393—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2181—Source of audio or video content, e.g. local disk arrays comprising remotely distributed storage units, e.g. when movies are replicated over a plurality of video servers
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25808—Management of client data
- H04N21/25841—Management of client data involving the geographical location of the client
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26208—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Computer Graphics (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明实施例提供了视频存储、视频访问方法及分布式存储、视频访问系统。其中,该视频存储方法包括:用户设备向推送服务器发送信息推送请求;其中,信息推送请求中携带有用户设备的设备信息;推送服务器基于设备信息,查找待推送给用户设备的目标视频的存储位置信息,并将携带存储位置信息的推送消息发送给用户设备;用户设备响应于推送消息,根据存储位置信息下载并存储目标视频。应用本发明实施例提供的视频存储方法,可以通过用户设备来存储目标视频,降低了边缘服务器的存储压力。
Description
技术领域
本发明涉及分布式存储技术领域,特别涉及视频存储、视频访问方法及分布式存储、视频访问系统。
背景技术
在目前的分布式存储系统中,常常包括多个边缘服务器。其中,这些边缘服务器为设置在近用户侧的服务器。另外,这些边缘服务器可以接收用户设备发送的视频访问请求。其中,当该边缘服务器中存储有该视频访问请求所请求访问的视频时,将该视频发送给用户设备。当该边缘服务器中未存储有该视频时,则需要从中心服务器回源该视频,并将该视频发送给用户设备。
但是,发明人在实现本发明的过程中发现,视频量会随着时间的推移而增加,使得边缘服务器所要存储的视频量越来越多,从而导致边缘服务器的存储压力变大。
发明内容
本发明实施例的目的在于提供视频存储、视频访问方法及分布式存储、视频访问系统,以降低边缘服务器的存储压力。具体技术方案如下:
第一方面,本发明实施例提供了一种视频存储方法,应用于包括推送服务器和用户设备的分布式存储系统,该方法包括:
用户设备向推送服务器发送信息推送请求;其中,信息推送请求中携带有用户设备的设备信息;
推送服务器基于设备信息,查找待推送给用户设备的目标视频的存储位置信息,并将携带存储位置信息的推送消息发送给用户设备;
用户设备响应于推送消息,根据存储位置信息下载并存储目标视频。
第二方面,本发明实施例还提供了一种视频存储方法,应用于推送服务器,该方法包括:
接收用户设备发送的信息推送请求;其中,信息推送请求中携带有用户设备的设备信息;
基于设备信息,查找待推送给用户设备的目标视频的存储位置信息;将携带存储位置信息的推送消息,发送给用户设备;其中,推送消息用于:指示用户设备根据存储位置信息下载并存储目标视频。
第三方面,本发明实施例还提供了一种视频存储方法,应用于用户设备,该方法包括:
向推送服务器发送信息推送请求;其中,信息推送请求中携带有用户设备的设备信息;
接收推送服务器所发送的推送消息;其中,推送消息中携带有基于设备信息所确定的、待推送给用户设备的目标视频的存储位置信息;
响应于推送消息,从存储位置信息下载并存储目标视频。
第四方面,本发明实施例还提供了一种视频访问方法,应用于包括调度服务器和用户设备的视频访问系统,该方法包括:
目标用户设备向调度服务器发送视频访问请求;目标用户设备为用户设备中的设备;
调度服务器判断用户设备中的非目标用户设备中是否存储有视频访问请求所要访问的目标视频;
若是,调度服务器将非目标用户设备中目标视频的目标存储地址信息发送给目标用户设备;
目标用户设备根据目标存储地址信息下载并存储目标视频;其中,目标视频是非目标用户设备预先下载并存储的。
第五方面,本发明实施例还提供了一种视频访问方法,应用于用户设备,方法包括:
向调度服务器发送视频访问请求;其中,视频访问请求用于请求访问目标视频;
接收调度服务器发送的、其他用户设备中目标视频的目标存储地址信息;其中,目标视频是其他用户设备根据推送服务器发送的推送消息中携带的存储地址信息下载并存储得到的;存储地址信息是推送服务器基于其他用户设备的设备信息确定得到的;
根据目标存储地址信息下载并存储目标视频。
第六方面,本发明实施例还提供了一种分布式存储系统,包括推送服务器和用户设备;
用户设备,用于向推送服务器发送信息推送请求;其中,信息推送请求中携带有用户设备的设备信息;
推送服务器,用于基于设备信息,查找待推送给用户设备的目标视频的存储位置信息,并将携带存储位置信息的推送消息发送给用户设备;
用户设备,还用于响应于推送消息,根据存储位置信息下载并存储目标视频。
第七方面,本发明实施例还提供了一种视频访问系统,该系统包括调度服务器和用户设备,用户设备中包括目标用户设备;
目标用户设备,用于向调度服务器发送视频访问请求;
调度服务器,用于判断用户设备中的非目标用户设备中是否存储有视频访问请求所要访问的目标视频;若是,将非目标用户设备中目标视频的目标存储地址信息发送给目标用户设备;
目标用户设备,还用于根据目标存储地址信息下载并存储目标视频;其中,目标视频是非目标用户设备预先下载并存储的。
第八方面,本发明实施例还提供了一种视频存储装置,应用于推送服务器,装置包括:
第一接收模块,用于接收用户设备发送的信息推送请求;其中,信息推送请求中携带有用户设备的设备信息;
查找模块,用于基于设备信息,查找待推送给用户设备的目标视频的存储位置信息;
发送模块,用于将携带存储位置信息的推送消息,发送给用户设备;其中,推送消息用于:指示用户设备根据存储位置信息下载并存储目标视频。
第九方面,本发明实施例还提供了一种视频存储装置,应用于用户设备,装置包括:
第一发送模块,用于向推送服务器发送信息推送请求;其中,信息推送请求中携带有用户设备的设备信息;
第二接收模块,用于接收推送服务器所发送的推送消息;其中,推送消息中携带有基于设备信息所确定的、待推送给用户设备的目标视频的存储位置信息;
第一存储模块,用于响应于推送消息,从存储位置信息下载并存储目标视频。
第十方面,本发明实施例还提供了一种视频访问装置,应用于用户设备,装置包括:
第二发送模块,用于向调度服务器发送视频访问请求;其中,视频访问请求用于请求访问目标视频;
第三接收模块,用于接收调度服务器发送的、其他用户设备中目标视频的目标存储地址信息;其中,目标视频是其他用户设备根据推送服务器发送的推送消息中携带的存储地址信息下载并存储得到的;存储地址信息是推送服务器基于其他用户设备的设备信息确定得到的;
第二存储模块,用于根据目标存储地址信息下载并存储目标视频。
第十一方面,本发明实施例还提供了一种推送服务器,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第二方面中任一项的方法步骤。
第十二方面,本发明实施例还提供了一种用户设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第三方面中任一项的方法步骤,或者,上述第五方面所提供的方法步骤。
第十三方面,本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现上述第二方面中任一项的方法步骤。
第十四方面,一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现上述第三方面中任一项的方法步骤,或者,上述第五方面所提供的方法步骤。
第十五方面,本发明提供还提供了一种包含指令的计算机程序产品,当其在推送服务器上运行时,使得推送服务器执行上述第二方面中任一项的方法步骤。
第十六方面,本发明提供还提供了一种包含指令的计算机程序产品,当其在用户设备上运行时,使得用户设备执行上述第三方面中任一项的方法步骤,或者,上述第五方面所提供的方法步骤。
在本发明实施例中,分布式存储系统中的用户设备可以向推送服务器发送信息推送请求。其中,该信息推送请求中携带有该用户设备的设备信息。然后,该分布式存储系统中的推送服务器可以基于该信息推送请求中的设备信息,查找待推送给该用户设备的目标视频的存储位置信息。并且,该推送服务器可以将携带该存储位置信息的推送消息发送给该用户设备。从而,该用户设备可以响应于该推送消息,根据该存储位置信息下载并存储该目标视频。
这样,用户设备可以下载并存储该目标视频,分担了边缘服务器存储该目标视频的存储压力。并且,应用该种视频存储方式,不需要新增大量的边缘服务器设备来存储视频,减少了部署边缘服务器的成本。而且,当其他用户设备发出针对该目标视频的视频访问请求时,可以从该用户设备下载该目标视频,而不需要从服务器侧下载该目标视频,缩短了数据传输距离,提高了获取该目标视频的速度。并且,还可以充分利用用户侧的空闲带宽资源,减少对服务器侧的带宽资源进行使用,减少了服务器侧的带宽成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明实施例提供的一种视频存储方法的流程图;
图2为本发明实施例提供的另一种视频存储方法的流程图;
图3为本发明实施例提供的又一种视频存储方法的流程图;
图4为本发明实施例提供的又一种视频存储方法的流程图;
图5为本发明实施例提供的一种视频访问方法的流程图;
图6为本发明实施例提供的另一种视频访问方法的流程图;
图7为本发明实施例提供的另一种视频访问方法的流程图;
图8为本发明实施例提供的一种分布式存储系统的结构示意图;
图9为本发明实施例提供的另一种分布式存储系统的结构示意图;
图10为本发明实施例提供的一种视频访问系统的结构示意图;
图11为本发明实施例提供的另一种视频访问系统的结构示意图;
图12为本发明实施例提供的一种视频存储装置的结构示意图;
图13为本发明实施例提供的另一种视频存储装置的结构示意图;
图14为本发明实施例提供的另一种视频访问装置的结构示意图;
图15为本发明实施例提供的一种推送服务器的结构示意图;
图16为本发明实施例提供的一种用户设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
为了解决现有技术中存在的问题,本发明实施例分别从分布式存储系统的角度、推送服务器的角度和用户设备的角度提供了一种视频存储方法及装置。相应于该视频存储方法及装置,还分别从视频访问系统的角度和用户设备的角度提供了一种视频访问方法及装置。另外,还提供了一种分布式存储系统、视频访问系统、推送服务器、用户设备、计算机可读存储介质及计算机程序产品。
下面先从分布式存储系统的角度,对本发明实施例提供的视频存储方法进行说明。
本发明实施例提供的视频存储方法应用于分布式存储系统,其中,该分布式存储系统包括推送服务器和用户设备。图1为本发明实施例提供的一种视频存储方法的流程图。参见图1,该视频存储方法可以包括如下步骤:
S10:用户设备向推送服务器发送信息推送请求;其中,信息推送请求中携带有用户设备的设备信息;
S20:推送服务器基于设备信息,查找待推送给用户设备的目标视频的存储位置信息;
S30:推送服务器将携带存储位置信息的推送消息发送给用户设备;
S40:用户设备响应于推送消息,根据存储位置信息下载并存储目标视频。
在本发明实施例中,分布式存储系统中的用户设备可以向推送服务器发送信息推送请求。其中,该信息推送请求中携带有该用户设备的设备信息。然后,该分布式存储系统中的推送服务器可以基于该信息推送请求中的设备信息,查找待推送给该用户设备的目标视频的存储位置信息。并且,该推送服务器可以将携带该存储位置信息的推送消息发送给该用户设备。从而,该用户设备可以响应于该推送消息,根据该存储位置信息下载并存储该目标视频。
这样,用户设备可以下载并存储该目标视频,这样可以通过边缘服务器和中心服务器之外的用户设备来存储目标视频,分担了边缘服务器存储该目标视频的存储压力。并且,应用该种视频存储方式,不需要新增大量的边缘服务器设备来存储视频,减少了部署边缘服务器的成本。而且,当其他用户设备发出针对该目标视频的视频访问请求时,可以从该用户设备下载该目标视频,而不需要从服务器侧下载该目标视频,缩短了数据传输距离,提高了获取该目标视频的速度。并且,还可以充分利用用户侧的空闲带宽资源,减少对服务器侧的带宽资源进行使用,减少了服务器侧的带宽成本。
其中,分布式存储系统除了可以包括推送服务器和用户设备,还可以包括调度服务器。其中,该用户设备包括但并不局限于个人计算机、手机和电视。
图2为本发明实施例提供的另一种视频存储方法的流程图。参见图2,应用于该分布式存储系统的视频存储方法可以包括如下步骤:
S01:调度服务器统计每个视频所对应的下载次数,并获取每个视频的预估读取数;
其中,调度服务器可以统计全网设备对每个视频的下载次数。统计频率可以为一天统计一次,当然并不局限于此。例如,调度服务器可以在9月1日的24:00时刻统计视频A被全网设备下载的次数为1000次。
可以理解的是,该全网设备包括但并不局限于用户设备、边缘设备和边缘服务器。该边缘设备是介于用户设备和边缘服务器之间的设备,例如路由器。
其中,每个视频的下载次数可以用来表征该视频在全网的拷贝数,即在全网中的存储量;每个视频的预估读取数可以用来表征该视频在全网的预估访问量。并且,一个视频的下载次数越大,则表明该视频在全网中的存储量越大,反之存储量越小;一个视频对应的预估读取数越大,则表明该视频的预估访问量越大,即预估访问需求量越大,反之预估访问需求量越小。
另外,技术人员可以根据经验以及视频的下载次数,设定每个视频的预估读取数。例如,可以设定视频A在9月2日的预估读取数为100000次。当然,也可以根据预设的预估读取数计算公式和该下载次数,计算每个视频的预估读取数,这都是合理的,在此不对预估读取数计算公式进行具体限定。
S02:调度服务器计算每个视频的下载次数与预估读取数的比值,得到每个视频所对应的第一拷贝比;
在获得每个视频的下载次数和预估读取数之后,调度服务器可以计算每个视频的下载次数和预估读取数的比值。并且,可以将每个视频所对应的该比值作为该视频所对应的第一拷贝比。
举例而言,视频A的下载次数为1000,且该视频的预估读取数为100000,则该视频A所对应的第一拷贝比为0.01。
其中,由于视频的下载次数可以表征该视频在全网中的存储量,该视频的预估读取数可以表征该视频的预估访问量。因而,该视频的第一拷贝比可以用来衡量该视频的稀缺程度。其中,当预估读取数一定时,视频的下载次数越小则表明该视频在全网中的存储量越少,该视频越稀缺;当下载次数一定时,预估读取数越大则表明该视频的预估访问量越大,该视频也越稀缺。
S03:调度服务器将第一拷贝比小于预设阈值的视频,确定为待推送视频;
可以理解的是,技术人员可以根据具体情况设定预设阈值。并且,当视频的第一拷贝比小于该预设阈值时,则表明该视频的存储量无法满足该视频的访问需求量,该视频为稀缺视频。基于此,调度服务器可以筛选出第一拷贝比小于该预设阈值的稀缺视频,并将该稀缺视频作为待推送视频。
S04:调度服务器将待推送视频的第一拷贝比和第一存储位置信息发送给推送服务器;
其中,调度服务器在筛选得到待推送视频之后,还可以确定该待推送视频的第一存储位置信息。然后,将该待推送视频的第一拷贝比以及该待推送视频的第一存储位置信息发送给推送服务器。进而,推送服务器可以存储该待推送视频的第一拷贝比和第一存储位置信息。
可以理解的是,调度服务器还可以构建存储有该待推送视频的第一拷贝比以及第一存储位置信息的推送表。然后,将该推送表发送给推送服务器,这也是合理的。
S10:用户设备向推送服务器发送信息推送请求;其中,信息推送请求中携带有用户设备的设备信息;
可以理解的是,该用户设备在检测到自身不存在下载任务的情况下,或者,在检测到自身处理器资源较为充足的情况下,可以给该推送服务器发送信息推送请求。另外,该用户设备也可以每间隔预设时长,向推送服务器发送一次信息推送请求,这也是合理的。其中,该预设时长包括但并局限于2分钟。
由于该信息推送请求中携带有该用户设备的设备信息,因而该用户设备可以向推送服务器上报其自身的设备信息。其中,该用户设备的设备信息可以包括该用户设备的在线时长信息。
在一种实现方式中,该在线时长信息可以为该用户设备的已开机时长。更为具体地,该在线时长信息可以是:用户设备发送该信息推送请求的发送时刻与距离发送时刻最近的开机时刻之间的时长信息。这样,可以将用户设备的已开机时长上报给推送服务器。
可以理解的是,用户设备是随着用户需求进行开关机的设备,也就是说,无法保证用户设备长期(例如24小时)处于开机状态。
在另一种实现方式中,该在线时长信息可以为该用户设备中所安装的视频客户端的已登录时长,这也是合理。更为具体地,该在线时长信息可以是:用户设备中的视频客户端发送信息推送请求的发送时刻,与距离发送时刻最近的视频客户端登录时刻之间的时长信息。这样,可以将用户设备中的视频客户端的已登录时长上报给推送服务器。
当然,该设备信息也可以包括该用户设备的在线时长信息和存储量信息。另外,该设备信息也可以包括该用户设备的在线时长信息和下载速率信息。此外,该设备信息还可以包括该用户设备的在线时长信息、存储量信息和下载速率信息,这都是合理的。这样,可以将用户设备的已开机时长,以及,下载速率信息和/或存储量信息上报给推送服务器。
S21:推送服务器基于用户设备的在线时长信息,计算用户设备的在线稳定性评分;
可以理解的是,推送服务器可以利用该用户设备的在线时长信息,来预估该用户设备的在线稳定性。具体地,可以利用该在线时长信息来计算该用户设备的在线稳定性评分。
举例而言,假设当前时间为18:00,则可以利用该用户设备的在线时长信息:该用户设备已经在线(即开机)2个小时,来计算该用户设备还可能在线几个小时。进而,可以根据该计算得到的数据来预估该用户设备在未来预设时间段20:00-22:00在线的可能性。并且,可以将该可能性所对应的数值作为该用户设备的在线稳定性评分。
又例如,假设当前时间为18:00,则可以利用该用户设备的在线时长信息:该用户设备中的视频客户端已经登录2个小时以及用户历史登录视频客户端的时长,来计算该视频客户端还可能在线几个小时。进而,可以根据该计算得到的数据来预估该视频客户端在未来预设时间段20:00-22:00在线的可能性。并且,可以将该可能性所对应的数值作为该用户设备的在线稳定性评分。
S22:推送服务器从预设在线稳定性评分和预设第一拷贝比的映射关系中,查找用户设备的在线稳定性评分所对应预设第一拷贝比作为目标拷贝比;
推送服务器在计算得到该用户设备的在线稳定性评分之后,还可以基于预设在线稳定性评分和预设第一拷贝比的映射关系,查找该在线稳定性评分所对应的预设第一拷贝比作为目标拷贝比。
其中,在该映射关系中,越高的预设在线稳定性评分可以对应越低的预设第一拷贝比。这样,可以给未来预设时间段能够稳定在线的用户设备分配较为稀缺的视频。从而,可以保证在未来时间段具有较多在线的用户设备存储较为稀缺的视频。进而,使得其他用户设备在未来预设时间段,可以从该用户设备中快速访问到该较为稀缺的视频,从而提高用户的视频访问体验。
S23:推送服务器从待推送视频的第一拷贝比和第一存储位置信息中,查找目标拷贝比对应的第一存储位置信息,作为待推送给用户设备的目标视频的存储位置信息;
在查找得到目标拷贝比之后,推送服务器可以从待推送视频的第一拷贝比和第一存储位置信息中,查找到该目标拷贝比所对应的第一拷贝比。其中,该第一拷贝比和目标拷贝比的取值可以相同。当然,该第一拷贝比和目标拷贝比的差值的绝对值也可以小于预设拷贝比差值,这都是合理。这样,可以查找到与该用户设备的设备信息相匹配的视频稀缺程度值(即第一拷贝比)。
进而,推送服务器可以查找到该第一拷贝比所对应的第一存储位置信息。然后,可以将该第一存储位置信息作为待推送给该用户设备的目标视频的存储位置信息。这样,可以查找到与该用户设备的设备信息相适应的目标视频的存储位置信息。例如,当该用户设备为在线稳定性评分为9分时,则待给该用户设备推送的目标视频为视频稀缺程度值为1%的视频。其中,视频稀缺程度值越小,则表明视频越稀缺。
S30:推送服务器将携带存储位置信息的推送消息发送给用户设备;
S40:用户设备响应于推送消息,根据存储位置信息下载并存储目标视频。
可以理解的是,推送服务器在查找到待推送给用户设备的目标视频的存储位置信息后,可以生成携带该存储位置信息的推送消息。并且,可以将该推送消息发送给用户设备。这样,用户设备在接收到该推送消息后,可以从该存储位置信息处的存储位置下载该目标视频,并且存储该目标视频。
这样,可以通过包括推送服务器、用户设备和调度服务器的分布式存储系统来给用户设备分配待存储的目标视频,从而该用户设备可以下载并存储该目标视频。从而,可以通过边缘服务器和中心服务器之外的用户设备来存储目标视频,分担了边缘服务器存储目标视频的存储压力。进而,可以不需要新增大量的边缘服务器设备来存储视频,减少了部署边缘服务器的成本。而且,当其他用户设备发出针对该目标视频的视频访问请求时,可以从该用户设备下载该目标视频,而不需要从服务器侧下载该目标视频,缩短了数据传输距离,提高了获取该目标视频的速度。并且,还可以充分利用用户侧的空闲带宽资源,减少对服务器侧的带宽资源进行使用,减少了服务器侧的带宽成本。
其中,为了能够更加准确地计算用户的在线稳定性评分,上述S21:推送服务器基于用户设备的在线时长信息,计算用户设备的在线稳定性评分的操作,具体可以为:
推送服务器根据用户设备的在线时长信息以及用户设备的存储量信息和/或下载速率信息,计算用户设备的在线稳定性评分。
可以理解的是,推送服务器可以根据用户设备的在线时长信息和存储量信息,计算用户设备的在线稳定性评分。这样,可以利用用户设备的在线时长信息和存储量信息作为影响因子,来计算用户设备的在线稳定性评分。
其中,该在线时长信息的权重系数可以为50%,该存储量信息的权重系数可以为50%,当然并不局限于此。进而,可以基于在线时长信息和存储量信息所确定的在线稳定性评分,来确定待推送给该用户设备的目标视频的存储位置信息。
举例而言,假设当前时间为18:00,则可以利用该用户设备的在线时长信息:该用户设备已经在线(即开机)2个小时,来计算该用户设备还可能在线几个小时。另外,还可以利用该用户设备的可用存储量为500M,计算该用户设备的存储能力。进而,可以根据该计算得到的可能在线时长和存储能力,来预估该用户设备在未来预设时间段20:00-22:00在线的可能性,以及能够执行存储操作的可能性。并且,可以将基于所预估的可能性和权重系数计算得到的可能性,作为该用户设备的在线稳定性评分。
推送服务器也可以根据该用户设备的在线时长信息和下载速率信息,计算用户设备的在线稳定性评分。这样,可以利用用户设备的在线时长信息和下载速率信息作为影响因子,来计算用户设备的在线稳定性评分。
其中,该在线时长信息的权重系数可以为50%,该下载速率信息的权重系数可以为50%,当然并不局限于此。从而,可以基于在线时长信息和下载速率信息所确定的在线稳定性评分,来确定待推送给该用户设备的目标视频的存储位置信息。
举例而言,假设当前时间为18:00,则可以利用该用户设备的在线时长信息:该用户设备已经在线(即开机)2个小时,来计算该用户设备还可能在线几个小时。另外,还可以利用该用户设备的下载速率信息为150Mbps(Million bits per second,兆比特每秒),计算该用户设备所在网络环境性能值。进而,可以根据该计算得到的可能在线时长和网络环境性能值,来预估该用户设备在未来预设时间段20:00-22:00在线的可能性,以及所在网络环境良好的可能性。并且,可以将基于所预估的可能性和权重系数计算得到的可能性,作为该用户设备的在线稳定性评分。
另外,推送服务器还可以根据该用户设备的在线时长信息、存储量信息和下载速率信息,计算用户设备的在线稳定性评分。这样,可以利用用户设备的在线时长信息、存储量信息和下载速率信息作为影响因子,来计算用户设备的在线稳定性评分。
其中,该在线时长信息的权重系数可以为60%,该存储量信息的权重系数可以20%,且该下载速率信息的权重系数可以为20%,当然并不局限于此。从而,可以基于在线时长信息、存储量信息和下载速率信息所确定的在线稳定性评分,来确定待推送给该用户设备的目标视频的存储位置信息。
举例而言,假设当前时间为18:00,则可以利用该用户设备的在线时长信息:该用户设备已经在线(即开机)6个小时,来计算该用户设备还可能在线几个小时。另外,还可以利用该用户设备的可用存储量为100M,计算该用户设备的存储能力,并且还可以利用该用户设备的下载速率信息为150Mbps(Million bits per second,兆比特每秒),计算该用户设备所在网络环境性能值。进而,可以根据该计算得到的可能在线时长、存储能力和网络环境性能值,来预估该用户设备在未来预设时间段20:00-22:00在线的可能性、能够执行存储操作的可能性以及所在网络环境良好的可能性。并且,可以将基于所预估的可能性和权重系数计算得到的可能性,作为该用户设备的在线稳定性评分。
其中,当上述S04:调度服务器将待推送视频的第一拷贝比和第一存储位置信息发送给推送服务器的步骤具体为:调度服务器将待推送视频的第一拷贝比、第一存储位置信息和预估读取数发送给推送服务器时,该推送服务器还可以执行如下操作:
在将携带存储位置信息的推送消息发送给用户设备之前,利用目标视频对应的预估读取数和预设拷贝比值相乘,计算得到目标视频的待推送份数;
判断历史上推送目标推送消息的已推送份数是否小于待推送份数;其中,目标推送消息为:携带存储位置信息的推送消息;
若小于待推送份数,触发将携带存储位置信息的推送消息发送给用户设备的操作,并对已推送份数加一;
若等于待推送份数,放弃触发将携带存储位置信息的推送消息发送给用户设备的操作。
可以理解的是,为了能够保证用户能够快速访问到稀缺的目标视频,该推送服务器可以利用目标视频对应的预估读取数和预设拷贝比值相乘,计算得到目标视频的待推送份数。
举例而言,目标视频对应的预估读取数为1000,该预设拷贝比值可以为50。那么,该目标视频对应的预估读取数和预设拷贝比值的乘积为50000,即该目标视频的待推送份数为50000。
其中,该待推送份数可以为:考虑了用户设备可能随时下线情况以及预估读取数的待推送份数。从而,推送服务器可以计算得到考虑了用户设备下线情况但是能够满足预估读取数的待推送份数。
计算得到目标视频的待推送份数之后,推送服务器可以确定历史上推送携带该存储位置信息的目标推送消息的已推送份数,并判断该已推送份数是否小于待推送份数。其中,当小于待推送份数时,则表明已推送份数还不能满足该目标视频的预估访问量。此时,推送服务器可以触发将携带存储位置信息的目标推送消息发送给该用户设备的操作,以使该用户设备可以根据该存储位置信息下载并存储该目标视频,扩大该目标视频的存储量。另外,推送服务器还可以对已推送份数加一,以在将推送消息发送给用户设备之后更新已推送份数。
另外,当已推送份数等于待推送份数时,则表明已推送份数还已经能够满足该目标视频的预估访问量。此时,推送服务器可以放弃触发将携带存储位置信息的推送消息发送给用户设备的操作,并且不需要对已推送份数进行更新。
其中,为了避免用户设备对该目标视频进行重复下载,该用户设备在接收到推送消息之后,并在根据存储位置信息下载并存储目标视频之前,还可以执行如下操作:
检测用户设备中是否存储有目标视频;
针对每个目标视频,若检测到该用户设备中存储有目标视频,则用户设备向推送服务器发送文件重复上报消息,并放弃执行根据存储位置信息下载并存储目标视频的操作;其中,文件重复上报消息用于:指示用户设备中存储有目标视频;
针对每个所述目标视频,若检测所述用户设备中未存储有所述目标视频,所述用户设备执行所述根据所述存储位置信息下载并存储所述目标视频的操作;
相应地,推送服务器响应于所述文件重复上报消息,对所述已推送份数减一。
可以理解的是,用户设备在接收到该推送消息之后,可以检测该用户设备自身是否已经存储有该推送消息所对应的目标视频。其中,针对每个目标视频,若用户设备中存储有该目标视频,用户设备则可以不再执行下载操作。这样,可以降低该用户设备的下载任务量,并且可以节省该用户设备的存储资源以及网络带宽资源。
并且,用户设备还可以向推送服务器发送文件重复上报消息。这样,推送服务器在接收到该文件重复上报消息之后,可以获知该用户设备中存储有该目标视频,从而对该目标视频对应的已推送份数减一。这样,使得推送服务器后续可以继续给其他用户设备推送该目标视频,以保证可以推送该待推送份数的目标视频。也就是说,可以保证期待的该目标视频的冗余程度不会改变。
另外,针对每个目标视频,若用户设备中未存储有该目标视频,用户设备可以执行根据存储位置信息下载并存储目标视频的操作。这样,可以通过边缘服务器和中心服务器之外的用户设备来存储目标视频,分担了边缘服务器存储目标视频的存储压力。
为了当该用户设备(例如用户设备U1)作为目标视频的访问源时,其他用户设备(例如用户设备U2)便于从该用户设备U1访问该目标视频,该用户设备U1在响应于推送消息,根据存储位置信息下载并存储目标视频之后,还可以向调度服务器发送注册信息。其中,该注册信息用于:指示用户设备U1已下载并存储目标视频。
从而,调度服务器在接收到该注册信息之后,可以存储该注册信息。这样,使得调度服务器在接收到其他用户设备U2针对该目标视频的视频访问请求时,可以基于该注册信息确定存储该目标视频的用户设备U1。进而,调度服务器可以将该用户设备U1的访问地址发送给该用户设备U2,该用户设备U2基于该访问地址访问该目标视频。
可以理解的是,该调度服务器在接收到该注册信息之后,还可以生成记录有该用户设备U1与该目标视频的映射关系的注册表。从而,在接收到针对该目标视频的视频访问请求时,该调度服务器可以查找该注册表,从而得到记录有目标文件所对应的用户设备U1。然后,该调度服务器也可以将该视频访问请求重定向至该用户设备U1,使用户设备U2可以快速地访问到该目标视频,这也是合理的。
综上,应用本发明实施例提供的视频存储方案,可以通过边缘服务器和中心服务器之外的用户设备来存储目标视频,分担了边缘服务器存储该目标视频的存储压力。并且,不需要新增大量的边缘服务器设备来存储视频,减少了部署边缘服务器的成本。而且,当其他用户设备发出针对该目标视频的视频访问请求时,可以从该用户设备下载该目标视频,而不需要从服务器侧下载该目标视频,缩短了数据传输距离,提高了获取该目标视频的速度。并且,还可以充分利用用户侧的空闲带宽资源,减少对服务器侧的带宽资源进行使用,减少了服务器侧的带宽成本。
下面从推送服务器的角度,对本发明实施例提供的视频存储方法进行说明。
图3示出了本发明实施例提供的一种视频存储方法的流程图。参见图3,该方法可以包括:
S301:接收用户设备发送的信息推送请求;其中,信息推送请求中携带有用户设备的设备信息;
S302:基于设备信息,查找待推送给用户设备的目标视频的存储位置信息;
S303:将携带存储位置信息的推送消息,发送给用户设备;其中,推送消息用于:指示用户设备根据存储位置信息下载并存储目标视频。
在本发明实施例中,推送服务器可以接收用户设备发送的信息推送请求。其中,该信息推送请求中可以携带有用户的设备信息。然后,可以基于该设备信息,查找待推送给用户设备的目标视频的存储位置信息。并且,可以将携带该存储位置信息的推送消息,发送给用户设备。其中,该推送消息用于:指示用户设备根据该存储位置信息下载并存储目标视频。从而,使得该用户设备可以根据该存储位置信息下载并存储该目标视频。
这样,可以通过边缘服务器和中心服务器之外的用户设备来存储目标视频,分担了边缘服务器存储该目标视频的存储压力。并且,由于不需要新增大量的边缘服务器设备来存储视频,因而可以减少部署边缘服务器的成本。而且,当其他用户设备发出针对该目标视频的视频访问请求时,可以从该用户设备下载该目标视频,而不需要从服务器侧下载该目标视频,缩短了数据传输距离,提高了获取该目标视频的速度。并且,还可以充分利用用户侧的空闲带宽资源,减少对服务器侧的带宽资源进行使用,减少了服务器侧的带宽成本。
其中,关于用户设备以及用户设备的设备信息的相关描述可以参见上文,在此不做赘述。
其中,上述S302:基于设备信息,查找待推送给用户设备的目标视频的存储位置信息的操作,可以包括:
S3021:接收调度服务器发送的待推送视频的第一拷贝比和第一存储位置信息;其中,待推送视频的第一拷贝比小于预设阈值;待推送视频的第一拷贝比为待推送视频的下载次数与待推送视频的预估读取数的比值;
其中,关于调度服务器的相关描述可以参见上文,在此不做赘述。
S3022:基于用户设备的在线时长信息,计算用户设备的在线稳定性评分;
可以理解的是,推送服务器可以利用该用户设备的在线时长信息,来预估该用户设备的在线稳定性。具体地,可以利用该在线时长信息来计算该用户设备的在线稳定性评分。
S3023:从预设在线稳定性评分和预设第一拷贝比的映射关系中,查找用户设备的在线稳定性评分所对应预设第一拷贝比作为目标拷贝比;
S3024:从待推送视频的第一拷贝比和第一存储位置信息中,查找目标拷贝比对应的第一存储位置信息,作为待推送给用户设备的目标视频的存储位置信息。
这样,可以查找到与该用户设备的设备信息相适应的目标视频的存储位置信息。其中,关于推送服务器的相关描述可以参见上文,在此不做赘述。
其中,为了能够更加准确地计算用户的在线稳定性评分,推送服务器基于用户设备的在线时长信息,计算用户设备的在线稳定性评分的操作,具体可以为:
推送服务器根据用户设备的在线时长信息以及用户设备的存储量信息和/或下载速率信息,计算用户设备的在线稳定性评分。
可以理解的是,推送服务器可以根据用户设备的在线时长信息和存储量信息,计算用户设备的在线稳定性评分。这样,可以利用用户设备的在线时长信息和存储量信息作为影响因子,来计算用户设备的在线稳定性评分。其中,该种计算用户设备的在线稳定性评分的具体示例可以参见上文的相关描述,在此不做具体限定。
其中,当调度服务器将待推送视频的第一拷贝比和第一存储位置信息发送给推送服务器的步骤具体为:调度服务器将待推送视频的第一拷贝比、第一存储位置信息和预估读取数发送给推送服务器时,该推送服务器还可以执行如下操作:
在将携带存储位置信息的推送消息发送给用户设备之前,利用目标视频对应的预估读取数和预设拷贝比值相乘,计算得到目标视频的待推送份数;
判断历史上推送目标推送消息的已推送份数是否小于待推送份数;其中,目标推送消息为:携带存储位置信息的推送消息;
若小于待推送份数,触发将携带存储位置信息的推送消息发送给用户设备的操作,并对已推送份数加一;
若等于待推送份数,放弃触发将携带存储位置信息的推送消息发送给用户设备的操作。
可以理解的是,为了能够保证用户能够快速访问到稀缺的目标视频,该推送服务器可以利用目标视频对应的预估读取数和预设拷贝比值相乘,计算得到目标视频的待推送份数。其中,计算该目标视频的待推送份数的方式可以参见上文的相关描述,在此不做赘述。
下面从用户设备的角度,对本发明实施例提供的视频存储方法进行说明。
图4示出了本发明实施例提供的又一种视频存储方法的流程图。参见图4,该方法可以包括:
S401:向推送服务器发送信息推送请求;其中,信息推送请求中携带有用户设备的设备信息;
S402:接收推送服务器所发送的推送消息;其中,推送消息中携带有基于设备信息所确定的、待推送给用户设备的目标视频的存储位置信息;
S403:响应于推送消息,基于存储位置信息下载并存储目标视频。
在本发明实施例中,用户设备可以向推送服务器发送信息推送请求。其中,该信息推送请求中携带有该用户设备的设备信息。然后,该用户设备接收到该推送服务器所发送的推送消息。其中,该推送消息中携带有基于该设备信息所确定的、待推送给用户设备的目标视频的存储位置信息。之后,可以响应于该推送消息,基于该存储位置下载并存储该目标视频。
这样,可以通过包括推送服务器、用户设备和调度服务器的分布式存储系统来给用户设备分配待存储的目标视频,从而该用户设备可以下载并存储该目标视频。从而,可以通过边缘服务器和中心服务器之外的用户设备来存储目标视频,分担了边缘服务器存储目标视频的存储压力。进而,可以不需要新增大量的边缘服务器设备来存储视频,减少了部署边缘服务器的成本。而且,当其他用户设备发出针对该目标视频的视频访问请求时,可以从该用户设备下载该目标视频,而不需要从服务器侧下载该目标视频,缩短了数据传输距离,提高了获取该目标视频的速度。并且,还可以充分利用用户侧的空闲带宽资源,减少对服务器侧的带宽资源进行使用,减少了服务器侧的带宽成本。
其中,关于用户设备、用户设备的设备信息和推送服务器的相关描述可以参见上文,在此不做赘述。
下面从视频访问系统的角度,对本发明实施例提供的视频访问方法进行说明。
本发明实施例提供的视频访问方法应用于视频访问系统,其中,该视频访问系统包括调度服务器和用户设备。图5为本发明实施例提供的一种视频访问方法的流程图。参见图5,该视频访问方法可以包括如下步骤:
S50:目标用户设备向调度服务器发送视频访问请求;目标用户设备为用户设备中的设备;
S51:调度服务器判断用户设备中的非目标用户设备中是否存储有视频访问请求所要访问的目标视频;
S52:若是,调度服务器将非目标用户设备中目标视频的目标存储地址信息发送给目标用户设备;
S53:目标用户设备根据目标存储地址信息下载并存储目标视频;其中,目标视频是非目标用户设备预先下载并存储的。
在本发明实施中,用户设备中目标用户设备可以向调度服务器发送视频访问请求。调度服务器在接收到该视频访问请求之后,可以判断该用户设备中的非目标用户设备中是否存储有该视频访问请求所要访问的目标视频。若是,该调度服务器可以将该非目标用户设备中该目标视频的目标存储地址信息发送给目标用户设备。从而,该目标用户设备可以根据该目标存储地址信息下载并存储该目标视频。其中,该目标视频是该非目标用户设备预先下载并存储的。
这样,可以通过边缘服务器和中心服务器之外的该非目标用户设备预先存储该目标视频,分担了边缘服务器存储该目标视频的存储压力。并且,不需要新增大量的边缘服务器设备来存储视频,减少了部署边缘服务器的成本。而且,当该目标用户发出针对该目标视频的视频访问请求时,可以从该非目标用户设备下载该目标视频,而不需要从服务器侧下载该目标视频,缩短了数据传输距离,提高了获取该目标视频的速度。并且,还可以充分利用用户侧的空闲带宽资源,减少对服务器侧的带宽资源进行使用,减少了服务器侧的带宽成本。
可以理解的是,该用户设备包括但并不局限于个人计算机、手机和电视。另外,在目标视频的存储阶段,该非目标用户设备可以基于上述从分布式存储系统角度所提供的视频存储方法,来存储该目标视频,在此不做赘述。
另外,该视频访问系统除了可以包括调度服务器和用户设备,还可以包括中心服务器和边缘服务器。
图6为本发明实施例提供的另一种视频访问方法的流程图。参见图6,应用于该视频访问系统的视频访问方法还可以包括如下步骤:
S54:若否,调度服务器将视频访问请求发送给边缘服务器;其中,若否是指:若非目标用户设备中未存储有视频访问请求所要访问的目标视频;
S55:边缘服务器从边缘服务器本地或中心服务器获取视频访问请求所要访问的目标视频;
S56:边缘服务器将目标视频发送给目标用户设备;
S57:目标用户设备接收并存储目标视频。
可以理解的是,当非目标用户设备中未存储有视频访问请求所要访问的目标视频时,调度服务器可以将视频访问请求发送给边缘服务器。也就是说,可以通过现有的视频访问方式来访问该目标视频。
其中,边缘服务器在接收到该视频访问请求之后,可以查找该边缘服务器是否存储有该目标视频。若存储有该目标视频,边缘服务器可以将该目标视频发送给该目标用户设备。若未存储有该目标视频,该边缘服务器可以向中心服务器请求下载该目标视频,并存储该目标视频,然后将该目标视频发送给该目标用户设备。从而,该目标用户可以接收并存储该目标视频。
在一种实现方式中,上述S51:调度服务器判断用户设备中的非目标用户设备中是否存储有视频访问请求所要访问的目标视频的操作,可以为:
调度服务器根据所存储的注册信息,判断用户设备中的非目标用户设备中是否存储有视频访问请求所要访问的目标视频;其中,注册信息用于指示用户设备已下载并存储的视频。
其中,是目标视频存储阶段,为了当非目标用户设备(例如非目标用户设备U3)作为目标视频的访问源时,其他目标用户设备(例如目标用户设备U4)便于从该非目标用户设备U3访问该目标视频,该非目标用户设备U3可以在根据存储位置信息下载并存储目标视频之后,向调度服务器发送注册信息。其中,该注册信息用于:指示非目标用户设备U3已下载并存储目标视频。
从而,调度服务器在接收到该注册信息之后,可以存储该注册信息。这样,使得调度服务器在接收到目标用户设备U4针对该目标视频的视频访问请求时,可以基于该注册信息确定非目标用户设备U3中存储有视频访问请求所要访问的目标视频。从而,使该目标用户设备U4可以从非目标用户设备U3中快速地访问到该目标视频。
在另一种实现方式中,上述S51:调度服务器判断用户设备中的非目标用户设备中是否存储有视频访问请求所要访问的目标视频的操作,还可以为:
调度服务器查找用户设备中的非目标用户设备中的、与目标用户设备的距离小于预设距离的非目标用户设备;
调度服务器判断小于预设距离的非目标用户设备中是否存储有视频访问请求所要访问的目标视频。
可以理解的是,调度服务器可以先查找非目标用户设备中的与该目标用户设备距离小于预设距离的非目标用户设备,即查找距离该目标用户设备较近的非目标用户设备。然后,可以判断该距离较近的非目标用户设备中是否存储有该视频访问请求所要访问的目标视频。当存储有该目标视频时,该目标用户设备则可以快速地访问到该目标视频,提升了用户的视频访问体验。
下面从用户设备的角度,对本发明实施例提供的视频访问方法进行说明。
本发明实施例提供的视频访问方法应用于用户设备。图7为本发明实施例提供的另一种视频访问方法的流程图。参见图7,该视频访问方法可以包括如下步骤:
S701:向调度服务器发送视频访问请求;其中,视频访问请求用于请求访问目标视频;
S702:接收调度服务器发送的、其他用户设备中目标视频的目标存储地址信息;其中,目标视频是其他用户设备根据推送服务器发送的推送消息中携带的存储地址信息下载并存储得到的;存储地址信息是推送服务器基于其他用户设备的设备信息确定得到的;
S703:根据目标存储地址信息下载并存储目标视频。
在本发明实施例中,用户设备可以向调度服务器发送视频访问请求。其中,该视频访问请求用于请求访问目标视频。然后,该用户涉笔可以接收调度服务器发送的、其他用户设备中该目标视频的目标存储地址信息。其中,该目标视频是其他用户设备根据推送服务器发送的推送消息中携带的存储地址信息下载并存储得到的;存储地址信息是推送服务器基于其他用户设备的设备信息确定得到的。然后,用户设备可以根据该目标存储地址信息下载并存储目标视频。这样,用户设备可以从距离用户较近的用户设备侧下载该目标视频,避免了从距离较远的边缘服务器获取该目标视频,缩短了数据传输距离,提高了获取该目标视频的速度。并且,还可以充分利用用户侧的空闲带宽资源,减少对服务器侧的带宽资源进行使用,减少了服务器侧的带宽成本。
其中,该其他设备存储该目标视频的方法可以参见上述从分布式存储系统提供的视频存储方法,在此不做赘述。
相应于上述应用于分布式存储系统的视频存储方法,本发明实施例还提供了一种分布式存储系统。
参见图8,该分布式存储系统可以包括推送服务器801和用户设备802;
用户设备802,用于向推送服务器801发送信息推送请求;其中,信息推送请求中携带有用户设备802的设备信息;
推送服务器801,用于基于设备信息,查找待推送给用户设备802的目标视频的存储位置信息,并将携带存储位置信息的推送消息发送给用户设备802;
用户设备802,还用于响应于推送消息,根据存储位置信息下载并存储目标视频。
在本发明实施例中,分布式存储系统中的用户设备可以向推送服务器发送信息推送请求。其中,该信息推送请求中携带有该用户设备的设备信息。然后,该分布式存储系统中的推送服务器可以基于该信息推送请求中的设备信息,查找待推送给该用户设备的目标视频的存储位置信息。并且,该推送服务器可以将携带该存储位置信息的推送消息发送给该用户设备。从而,该用户设备可以响应于该推送消息,根据该存储位置信息下载并存储该目标视频。
这样,用户设备可以下载并存储该目标视频,这样可以通过边缘服务器和中心服务器之外的用户设备来存储目标视频,分担了边缘服务器存储该目标视频的存储压力。并且,应用该种视频存储方式,不需要新增大量的边缘服务器设备来存储视频,减少了部署边缘服务器的成本。而且,当其他用户设备发出针对该目标视频的视频访问请求时,可以从该用户设备下载该目标视频,而不需要从服务器侧下载该目标视频,缩短了数据传输距离,提高了获取该目标视频的速度。并且,还可以充分利用用户侧的空闲带宽资源,减少对服务器侧的带宽资源进行使用,减少了服务器侧的带宽成本。
可选地,分布式存储系统中还包括如图9所示的调度服务器803;
调度服务器803,用于统计每个视频所对应的下载次数,并获取每个视频的预估读取数;计算每个视频的下载次数与预估读取数的比值,得到每个视频所对应的第一拷贝比;将第一拷贝比小于预设阈值的视频,确定为待推送视频;将待推送视频的第一拷贝比和第一存储位置信息发送给推送服务器801;
推送服务器801具体用于:基于用户设备802的在线时长信息,计算用户设备802的在线稳定性评分;从预设在线稳定性评分和预设第一拷贝比的映射关系中,查找用户设备802的在线稳定性评分所对应预设第一拷贝比作为目标拷贝比;从待推送视频的第一拷贝比和第一存储位置信息中,查找目标拷贝比对应的第一存储位置信息,作为待推送给用户设备802的目标视频的存储位置信息。
可选地,推送服务器801具体用于:
根据用户设备802的在线时长信息以及用户设备802的存储量信息和/或下载速率信息,计算用户设备802的在线稳定性评分。
可选地,在线时长信息包括:用户设备802发送信息推送请求的发送时刻与距离发送时刻最近的开机时刻之间的时长信息;
或,用户设备802中的视频客户端发送信息推送请求的发送时刻,与距离发送时刻最近的视频客户端登录时刻之间的时长信息。
可选地,调度服务器803具体用于:
将待推送视频的第一拷贝比、第一存储位置信息和预估读取数发送给推送服务器801;
推送服务器801还用于:
将携带存储位置信息的推送消息发送给用户设备802之前,利用目标视频对应的预估读取数和预设拷贝比值相乘,计算得到目标视频的待推送份数;
判断历史上推送目标推送消息的已推送份数是否小于待推送份数;其中,目标推送消息为:携带存储位置信息的推送消息;
若小于待推送份数,触发将携带存储位置信息的推送消息发送给用户设备802的操作,并对已推送份数加一;
若等于待推送份数,放弃触发将携带存储位置信息的推送消息发送给用户设备802的操作。
可选地,用户设备802还用于:
在接收到推送消息之后,在根据存储位置信息下载并存储目标视频之前,检测用户设备802中是否存储有目标视频;
针对每个目标视频,若检测用户设备802中存储有目标视频,向推送服务器801发送文件重复上报消息,并放弃执行根据存储位置信息下载并存储目标视频的操作;其中,文件重复上报消息用于:指示用户设备802中存储有目标视频;
针对每个目标视频,若检测用户设备802中未存储有目标视频,执行根据存储位置信息下载并存储目标视频的操作;
推送服务器801还用于:响应于文件重复上报消息,对已推送份数减一。
可选地,用户设备802还用于:
在响应于推送消息,根据存储位置信息下载并存储目标视频之后,向调度服务器803发送注册信息;其中,注册信息用于:指示用户设备802已下载并存储目标视频;
调度服务器803还用于:
存储注册信息,以使调度服务器803在接收到针对目标视频的视频访问请求时,基于注册信息确定存储目标视频的用户设备802。
相应于上述应用于视频访问系统的视频访问方法,本发明实施例还提供了一种视频访问系统。
参见图10,本发明实施例提供的视频访问系统包括调度服务器901和用户设备902,用户设备902中包括目标用户设备;
目标用户设备,用于向调度服务器901发送视频访问请求;
调度服务器901,用于判断用户设备902中的非目标用户设备中是否存储有视频访问请求所要访问的目标视频;若是,将非目标用户设备中目标视频的目标存储地址信息发送给目标用户设备;
目标用户设备,还用于根据目标存储地址信息下载并存储目标视频;其中,目标视频是非目标用户设备预先下载并存储的。
在本发明实施中,用户设备中目标用户设备可以向调度服务器发送视频访问请求。调度服务器在接收到该视频访问请求之后,可以判断该用户设备中的非目标用户设备中是否存储有该视频访问请求所要访问的目标视频。若是,该调度服务器可以将该非目标用户设备中该目标视频的目标存储地址信息发送给目标用户设备。从而,该目标用户设备可以根据该目标存储地址信息下载并存储该目标视频。其中,该目标视频是该非目标用户设备预先下载并存储的。
这样,可以通过边缘服务器和中心服务器之外的该非目标用户设备预先存储该目标视频,分担了边缘服务器存储该目标视频的存储压力。并且,不需要新增大量的边缘服务器设备来存储视频,减少了部署边缘服务器的成本。而且,当该目标用户发出针对该目标视频的视频访问请求时,可以从该非目标用户设备下载该目标视频,而不需要从服务器侧下载该目标视频,缩短了数据传输距离,提高了获取该目标视频的速度。并且,还可以充分利用用户侧的空闲带宽资源,减少对服务器侧的带宽资源进行使用,减少了服务器侧的带宽成本。
可选地,该系统还包括如图11所示中心服务器904和边缘服务器903;
调度服务器901,还用于当非目标用户设备中未存储有视频访问请求所要访问的目标视频时,将视频访问请求发送给边缘服务器903;
边缘服务器903,用于从边缘服务器903本地或中心服务器904获取视频访问请求所要访问的目标视频,将目标视频发送给目标用户设备;
目标用户设备,还用于接收并存储目标视频。
可选地,调度服务器901具体用于:
根据所存储的注册信息,判断用户设备902中的非目标用户设备中是否存储有视频访问请求所要访问的目标视频;其中,注册信息用于指示用户设备已下载并存储的视频。
可选地,调度服务器901具体用于:
查找用户设备902中的非目标用户设备中的、与目标用户设备的距离小于预设距离的非目标用户设备;
判断小于预设距离的非目标用户设备中是否存储有视频访问请求所要访问的目标视频。
相应于应用于推送服务器的视频存储方法,本发明实施例还提供了一种视频存储装置,应用于推送服务器。参见图12,该装置可以包括:
第一接收模块1201,用于接收用户设备发送的信息推送请求;其中,信息推送请求中携带有用户设备的设备信息;
查找模块1202,用于基于设备信息,查找待推送给用户设备的目标视频的存储位置信息;
发送模块1203,用于将携带存储位置信息的推送消息,发送给用户设备;其中,推送消息用于:指示用户设备根据存储位置信息下载并存储目标视频。
在本发明实施例中,推送服务器可以接收用户设备发送的信息推送请求。其中,该信息推送请求中可以携带有用户的设备信息。然后,可以基于该设备信息,查找待推送给用户设备的目标视频的存储位置信息。并且,可以将携带该存储位置信息的推送消息,发送给用户设备。其中,该推送消息用于:指示用户设备根据该存储位置信息下载并存储目标视频。从而,使得该用户设备可以根据该存储位置信息下载并存储该目标视频。
这样,可以通过边缘服务器和中心服务器之外的用户设备来存储目标视频,分担了边缘服务器存储该目标视频的存储压力。并且,由于不需要新增大量的边缘服务器设备来存储视频,因而可以减少部署边缘服务器的成本。而且,当其他用户设备发出针对该目标视频的视频访问请求时,可以从该用户设备下载该目标视频,而不需要从服务器侧下载该目标视频,缩短了数据传输距离,提高了获取该目标视频的速度。并且,还可以充分利用用户侧的空闲带宽资源,减少对服务器侧的带宽资源进行使用,减少了服务器侧的带宽成本。
可选地,查找模块1202包括:
接收单元,用于接收调度服务器发送的待推送视频的第一拷贝比和第一存储位置信息;其中,待推送视频的第一拷贝比小于预设阈值;待推送视频的第一拷贝比为待推送视频的下载次数与待推送视频的预估读取数的比值;
计算单元,用于基于用户设备的在线时长信息,计算用户设备的在线稳定性评分;
第一查找单元,用于从预设在线稳定性评分和预设第一拷贝比的映射关系中,查找用户设备的在线稳定性评分所对应预设第一拷贝比作为目标拷贝比;
第二查找单元,用于从待推送视频的第一拷贝比和第一存储位置信息中,查找目标拷贝比对应的第一存储位置信息,作为待推送给用户设备的目标视频的存储位置信息。
可选地,在线时长信息包括:用户设备发送信息推送请求的发送时刻与距离发送时刻最近的开机时刻之间的时长信息;
或,用户设备中的视频客户端发送信息推送请求的发送时刻,与距离发送时刻最近的视频客户端登录时刻之间的时长信息。
相应于应用于用户设备的视频存储方法,本发明实施例还提供了一种视频存储装置,应用于用户设备。参见图13,该装置包括:
第一发送模块1301,用于向推送服务器发送信息推送请求;其中,信息推送请求中携带有用户设备的设备信息;
第二接收模块1302,用于接收推送服务器所发送的推送消息;其中,推送消息中携带有基于设备信息所确定的、待推送给用户设备的目标视频的存储位置信息;
第一存储模块1303,用于响应于推送消息,从存储位置信息下载并存储目标视频。
在本发明实施例中,用户设备可以向推送服务器发送信息推送请求。其中,该信息推送请求中携带有该用户设备的设备信息。然后,该用户设备接收到该推送服务器所发送的推送消息。其中,该推送消息中携带有基于该设备信息所确定的、待推送给用户设备的目标视频的存储位置信息。之后,可以响应于该推送消息,基于该存储位置下载并存储该目标视频。
这样,可以通过包括推送服务器、用户设备和调度服务器的分布式存储系统来给用户设备分配待存储的目标视频,从而该用户设备可以下载并存储该目标视频。从而,可以通过边缘服务器和中心服务器之外的用户设备来存储目标视频,分担了边缘服务器存储目标视频的存储压力。进而,可以不需要新增大量的边缘服务器设备来存储视频,减少了部署边缘服务器的成本。而且,当其他用户设备发出针对该目标视频的视频访问请求时,可以从该用户设备下载该目标视频,而不需要从服务器侧下载该目标视频,缩短了数据传输距离,提高了获取该目标视频的速度。并且,还可以充分利用用户侧的空闲带宽资源,减少对服务器侧的带宽资源进行使用,减少了服务器侧的带宽成本。
可选地,第一存储模块1303具体用于:
当检测到用户设备不存在下载任务时,响应于推送消息,根据存储位置信息下载并存储目标视频。
相应于应用于用户设备的视频访问方法,本发明实施例还提供了一种视频访问装置,应用于用户设备。参见图14,该装置包括:
第二发送模块1401,用于向调度服务器发送视频访问请求;其中,视频访问请求用于请求访问目标视频;
第三接收模块1402,用于接收调度服务器发送的、其他用户设备中目标视频的目标存储地址信息;其中,目标视频是其他用户设备根据推送服务器发送的推送消息中携带的存储地址信息下载并存储得到的;存储地址信息是推送服务器基于其他用户设备的设备信息确定得到的;
第二存储模块1403,用于根据目标存储地址信息下载并存储目标视频。
在本发明实施例中,用户设备可以向调度服务器发送视频访问请求。其中,该视频访问请求用于请求访问目标视频。然后,该用户涉笔可以接收调度服务器发送的、其他用户设备中该目标视频的目标存储地址信息。其中,该目标视频是其他用户设备根据推送服务器发送的推送消息中携带的存储地址信息下载并存储得到的;存储地址信息是推送服务器基于其他用户设备的设备信息确定得到的。然后,用户设备可以根据该目标存储地址信息下载并存储目标视频。这样,用户设备可以从距离用户较近的用户设备侧下载该目标视频,避免了从距离较远的边缘服务器获取该目标视频,缩短了数据传输距离,提高了获取该目标视频的速度。并且,还可以充分利用用户侧的空闲带宽资源,减少对服务器侧的带宽资源进行使用,减少了服务器侧的带宽成本。
相应于上述方法实施例,本发明实施例还提供了一种推送服务器,参见图15,包括处理,1501、通信接口1502、存储器1503和通信总线1504,其中,处理器1501,通信接口1502,存储器1503通过通信总线1504完成相互间的通信;
存储器1503,用于存放计算机程序;
处理器1501,用于执行存储器1503上所存放的程序时,实现上述应用于推送服务器的任一项视频存储方法的方法步骤。
相应于上述方法实施例,本发明实施例还提供了一种用户设备,参见图16,包括处理1601、通信接口1602、存储器1603和通信总线1604,其中,处理器1601,通信接口1602,存储器1603通过通信总线1604完成相互间的通信;
存储器1603,用于存放计算机程序;
处理器1601,用于执行存储器1603上所存放的程序时,实现上述应用于用户设备的任一项视频存储方法的方法步骤,或者,上述应用于用户设备的任一项视频访问方法的方法步骤。
相应于上述方法实施例,本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被推送服务器的处理器执行时实现上述应用于推送服务器的任一项视频存储方法的方法步骤。
相应于上述方法实施例,一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被用户设备的处理器执行时实现上述应用于用户设备的任一项视频存储方法的方法步骤,或者,上述应用于用户设备的任一项视频访问方法的方法步骤。
相应于上述方法实施例,本发明提供还提供了一种包含指令的计算机程序产品,当其在推送服务器上运行时,使得推送服务器执行上述应用于推送服务器的任一项视频存储方法的方法步骤。
相应于上述方法实施例,本发明提供还提供了一种包含指令的计算机程序产品,当其在用户设备上运行时,使得用户设备执行上述应用于用户设备的任一项视频存储方法的方法步骤,或者,上述应用于用户设备的任一项视频访问方法的方法步骤。
上述用户设备提到的通信总线可以是外设部件互连标准(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 (38)
1.一种视频存储方法,其特征在于,应用于包括推送服务器、调度服务器和用户设备的分布式存储系统,所述方法包括:
所述用户设备向所述推送服务器发送信息推送请求;其中,所述信息推送请求中携带有所述用户设备的设备信息;所述设备信息包括所述用户设备的在线时长信息、所述用户设备的存储量信息和所述用户设备的下载速率信息;所述用户设备的在线时长信息用于确定所述用户设备的在线稳定性评分;
所述推送服务器基于所述设备信息,查找待推送给所述用户设备的目标视频的存储位置信息,并将携带所述存储位置信息的推送消息发送给所述用户设备;所述待推送给所述用户设备的目标视频的存储位置信息是基于所述在线稳定性评分和各视频的第一拷贝比计算得到的,其中,每个视频所对应的第一拷贝比是所述调度服务器基于该视频所对应的下载次数和该视频的预估读取数计算得到的;
所述用户设备响应于所述推送消息,根据所述存储位置信息下载并存储所述目标视频。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述调度服务器统计每个视频所对应的下载次数,并获取每个所述视频的预估读取数;计算每个所述视频的所述下载次数与所述预估读取数的比值,得到每个所述视频所对应的第一拷贝比;将所述第一拷贝比小于预设阈值的视频,确定为待推送视频;将所述待推送视频的第一拷贝比和第一存储位置信息发送给所述推送服务器;所述预估读取数为每个所述视频在全网的预估访问量;
所述推送服务器基于所述设备信息,查找待推送给所述用户设备的目标视频的存储位置信息,包括:
所述推送服务器基于所述用户设备的在线时长信息,计算所述用户设备的在线稳定性评分;从预设在线稳定性评分和预设第一拷贝比的映射关系中,查找所述用户设备的在线稳定性评分所对应预设第一拷贝比作为目标拷贝比;从所述待推送视频的第一拷贝比和第一存储位置信息中,查找所述目标拷贝比对应的第一存储位置信息,作为待推送给所述用户设备的目标视频的存储位置信息。
3.根据权利要求2所述的方法,其特征在于,所述推送服务器基于所述用户设备的在线时长信息,计算所述用户设备的在线稳定性评分,包括:
推送服务器根据所述用户设备的在线时长信息以及所述用户设备的存储量信息和/或下载速率信息,计算所述用户设备的在线稳定性评分。
4.根据权利要求2或3所述的方法,其特征在于,所述在线时长信息包括:所述用户设备发送所述信息推送请求的发送时刻与距离所述发送时刻最近的开机时刻之间的时长信息;
或,所述用户设备中的视频客户端发送所述信息推送请求的发送时刻,与距离所述发送时刻最近的所述视频客户端登录时刻之间的时长信息。
5.根据权利要求2所述的方法,其特征在于,所述调度服务器将所述待推送视频的第一拷贝比和第一存储位置信息发送给所述推送服务器,包括:
所述调度服务器将所述待推送视频的第一拷贝比、第一存储位置信息和预估读取数发送给所述推送服务器;
所述方法还包括:
所述推送服务器在将携带所述存储位置信息的推送消息发送给所述用户设备之前,利用所述目标视频对应的所述预估读取数和预设拷贝比值相乘,计算得到所述目标视频的待推送份数;
所述推送服务器判断历史上推送目标推送消息的已推送份数是否小于所述待推送份数;其中,所述目标推送消息为:携带所述存储位置信息的推送消息;
若小于所述待推送份数,所述推送服务器触发所述将携带所述存储位置信息的推送消息发送给所述用户设备的操作,并对所述已推送份数加一;
若等于所述待推送份数,所述推送服务器放弃触发所述将携带所述存储位置信息的推送消息发送给所述用户设备的操作。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
所述用户设备在接收到所述推送消息之后,在根据所述存储位置信息下载并存储所述目标视频之前,检测所述用户设备中是否存储有所述目标视频;
针对每个所述目标视频,若检测所述用户设备中存储有所述目标视频,所述用户设备向所述推送服务器发送文件重复上报消息,并放弃执行所述根据所述存储位置信息下载并存储所述目标视频的操作;其中,所述文件重复上报消息用于:指示所述用户设备中存储有所述目标视频;
针对每个所述目标视频,若检测所述用户设备中未存储有所述目标视频,所述用户设备执行所述根据所述存储位置信息下载并存储所述目标视频的操作;
所述推送服务器响应于所述文件重复上报消息,对所述已推送份数减一。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述用户设备在响应于所述推送消息,根据所述存储位置信息下载并存储所述目标视频之后,向所述调度服务器发送注册信息;其中,所述注册信息用于:指示所述用户设备已下载并存储所述目标视频;
所述调度服务器存储所述注册信息,以使所述调度服务器在接收到针对所述目标视频的视频访问请求时,基于所述注册信息确定存储所述目标视频的所述用户设备。
8.一种视频存储方法,其特征在于,应用于推送服务器,所述方法包括:
接收用户设备发送的信息推送请求;其中,所述信息推送请求中携带有所述用户设备的设备信息;所述设备信息包括所述用户设备的在线时长信息、所述用户设备的存储量信息和所述用户设备的下载速率信息;所述用户设备的在线时长信息用于确定所述用户设备的在线稳定性评分;
基于所述设备信息,查找待推送给所述用户设备的目标视频的存储位置信息;将携带所述存储位置信息的推送消息,发送给所述用户设备;其中,所述推送消息用于:指示所述用户设备根据所述存储位置信息下载并存储所述目标视频;所述待推送给所述用户设备的目标视频的存储位置信息是基于所述在线稳定性评分和各视频的第一拷贝比计算得到的,其中,每个视频所对应的第一拷贝比是调度服务器基于该视频所对应的下载次数和该视频的预估读取数计算得到的。
9.根据权利要求8所述的方法,其特征在于,所述基于所述设备信息,查找待推送给所述用户设备的目标视频的存储位置信息,包括:
接收所述调度服务器发送的待推送视频的第一拷贝比和第一存储位置信息;其中,所述待推送视频的第一拷贝比小于预设阈值;所述待推送视频的第一拷贝比为所述待推送视频的下载次数与所述待推送视频的预估读取数的比值;所述预估读取数为每个所述视频在全网的预估访问量;
基于所述用户设备的在线时长信息,计算所述用户设备的在线稳定性评分;
从预设在线稳定性评分和预设第一拷贝比的映射关系中,查找所述用户设备的在线稳定性评分所对应预设第一拷贝比作为目标拷贝比;
从所述待推送视频的第一拷贝比和第一存储位置信息中,查找所述目标拷贝比对应的第一存储位置信息,作为待推送给所述用户设备的目标视频的存储位置信息。
10.根据权利要求9所述的方法,其特征在于,所述在线时长信息包括:所述用户设备发送所述信息推送请求的发送时刻与距离所述发送时刻最近的开机时刻之间的时长信息;
或,所述用户设备中的视频客户端发送所述信息推送请求的发送时刻,与距离所述发送时刻最近的所述视频客户端登录时刻之间的时长信息。
11.一种视频存储方法,其特征在于,应用于用户设备,所述方法包括:
向推送服务器发送信息推送请求;其中,所述信息推送请求中携带有所述用户设备的设备信息;所述设备信息包括所述用户设备的在线时长信息、所述用户设备的存储量信息和所述用户设备的下载速率信息;所述用户设备的在线时长信息用于确定所述用户设备的在线稳定性评分;
接收所述推送服务器所发送的推送消息;其中,所述推送消息中携带有基于所述设备信息所确定的、待推送给所述用户设备的目标视频的存储位置信息;所述待推送给所述用户设备的目标视频的存储位置信息是基于所述在线稳定性评分和各视频的第一拷贝比计算得到的,其中,每个视频所对应的第一拷贝比是调度服务器基于该视频所对应的下载次数和该视频的预估读取数计算得到的;
响应于所述推送消息,从所述存储位置信息下载并存储所述目标视频。
12.根据权利要求11所述的方法,其特征在于,所述响应于所述推送消息,根据所述存储位置信息下载并存储所述目标视频,包括
当检测到所述用户设备不存在下载任务时,响应于所述推送消息,根据所述存储位置信息下载并存储所述目标视频。
13.一种视频访问方法,其特征在于,应用于包括调度服务器和用户设备的视频访问系统,所述方法包括:
目标用户设备向所述调度服务器发送视频访问请求;所述目标用户设备为所述用户设备中的设备;
所述调度服务器判断所述用户设备中的非目标用户设备中是否存储有所述视频访问请求所要访问的目标视频;
若是,所述调度服务器将所述非目标用户设备中所述目标视频的目标存储地址信息发送给所述目标用户设备;
所述目标用户设备根据所述目标存储地址信息下载并存储所述目标视频;其中,所述目标视频是所述非目标用户设备按照权利要求1所述的视频存储方法预先下载并存储的。
14.根据权利要求13所述的方法,其特征在于,所述视频访问系统还包括中心服务器和边缘服务器,所述方法还包括:
若所述非目标用户设备中未存储有所述视频访问请求所要访问的目标视频,所述调度服务器将所述视频访问请求发送给所述边缘服务器;
所述边缘服务器从所述边缘服务器本地或所述中心服务器获取所述视频访问请求所要访问的目标视频,将所述目标视频发送给所述目标用户设备;
所述目标用户设备接收并存储所述目标视频。
15.根据权利要求13所述的方法,其特征在于,所述调度服务器判断所述用户设备中的非目标用户设备中是否存储有所述视频访问请求所要访问的目标视频,包括:
所述调度服务器根据所存储的注册信息,判断所述用户设备中的非目标用户设备中是否存储有所述视频访问请求所要访问的目标视频;其中,所述注册信息用于指示所述用户设备已下载并存储的视频。
16.根据权利要求13所述的方法,其特征在于,所述调度服务器判断所述用户设备中的非目标用户设备中是否存储有所述视频访问请求所要访问的目标视频,包括:
所述调度服务器查找所述用户设备中的非目标用户设备中的、与所述目标用户设备的距离小于预设距离的非目标用户设备;
所述调度服务器判断所述小于预设距离的非目标用户设备中是否存储有所述视频访问请求所要访问的目标视频。
17.一种视频访问方法,其特征在于,应用于用户设备,所述方法包括:
向调度服务器发送视频访问请求;其中,所述视频访问请求用于请求访问目标视频;
接收所述调度服务器发送的、其他用户设备中所述目标视频的目标存储地址信息;其中,所述目标视频是所述其他用户设备根据推送服务器发送的推送消息中携带的存储地址信息下载并存储得到的;所述存储地址信息是所述推送服务器基于所述其他用户设备的设备信息确定得到的;所述设备信息包括所述用户设备的在线时长信息、所述用户设备的存储量信息和所述用户设备的下载速率信息;所述用户设备的在线时长信息用于确定所述用户设备的在线稳定性评分;所述目标视频的存储地址信息是基于所述在线稳定性评分和各视频的第一拷贝比计算得到的,其中,每个视频所对应的第一拷贝比是所述调度服务器基于该视频所对应的下载次数和该视频的预估读取数计算得到的;
根据所述目标存储地址信息下载并存储所述目标视频。
18.一种分布式存储系统,其特征在于,包括推送服务器和用户设备;
所述用户设备,用于向所述推送服务器发送信息推送请求;其中,所述信息推送请求中携带有所述用户设备的设备信息;所述设备信息包括所述用户设备的在线时长信息、所述用户设备的存储量信息和所述用户设备的下载速率信息;所述用户设备的在线时长信息用于确定所述用户设备的在线稳定性评分;
所述推送服务器,用于基于所述设备信息,查找待推送给所述用户设备的目标视频的存储位置信息,并将携带所述存储位置信息的推送消息发送给所述用户设备;所述待推送给所述用户设备的目标视频的存储位置信息是基于所述在线稳定性评分和各视频的第一拷贝比计算得到的,其中,每个视频所对应的第一拷贝比是调度服务器基于该视频所对应的下载次数和该视频的预估读取数计算得到的;
所述用户设备,还用于响应于所述推送消息,根据所述存储位置信息下载并存储所述目标视频。
19.根据权利要求18所述的系统,其特征在于,
所述调度服务器,用于统计每个视频所对应的下载次数,并获取每个所述视频的预估读取数;计算每个所述视频的所述下载次数与所述预估读取数的比值,得到每个所述视频所对应的第一拷贝比;将所述第一拷贝比小于预设阈值的视频,确定为待推送视频;将所述待推送视频的第一拷贝比和第一存储位置信息发送给所述推送服务器;所述预估读取数为每个所述视频在全网的预估访问量;
所述推送服务器具体用于:基于所述用户设备的在线时长信息,计算所述用户设备的在线稳定性评分;从预设在线稳定性评分和预设第一拷贝比的映射关系中,查找所述用户设备的在线稳定性评分所对应预设第一拷贝比作为目标拷贝比;从所述待推送视频的第一拷贝比和第一存储位置信息中,查找所述目标拷贝比对应的第一存储位置信息,作为待推送给所述用户设备的目标视频的存储位置信息。
20.根据权利要求19所述的系统,其特征在于,所述推送服务器具体用于:
根据所述用户设备的在线时长信息、所述用户设备的存储量信息和所述用户设备的下载速率信息,计算所述用户设备的在线稳定性评分。
21.根据权利要求19或20所述的系统,其特征在于,所述在线时长信息包括:所述用户设备发送所述信息推送请求的发送时刻与距离所述发送时刻最近的开机时刻之间的时长信息;
或,所述用户设备中的视频客户端发送所述信息推送请求的发送时刻,与距离所述发送时刻最近的所述视频客户端登录时刻之间的时长信息。
22.根据权利要求19所述的系统,其特征在于,所述调度服务器具体用于:
将所述待推送视频的第一拷贝比、第一存储位置信息和预估读取数发送给所述推送服务器;
所述推送服务器还用于:
将携带所述存储位置信息的推送消息发送给所述用户设备之前,利用所述目标视频对应的所述预估读取数和预设拷贝比值相乘,计算得到所述目标视频的待推送份数;
判断历史上推送目标推送消息的已推送份数是否小于所述待推送份数;其中,所述目标推送消息为:携带所述存储位置信息的推送消息;
若小于所述待推送份数,触发所述将携带所述存储位置信息的推送消息发送给所述用户设备的操作,并对所述已推送份数加一;
若等于所述待推送份数,放弃触发所述将携带所述存储位置信息的推送消息发送给所述用户设备的操作。
23.根据权利要求22所述的系统,其特征在于,所述用户设备还用于:
在接收到所述推送消息之后,在根据所述存储位置信息下载并存储所述目标视频之前,检测所述用户设备中是否存储有所述目标视频;
针对每个所述目标视频,若检测所述用户设备中存储有所述目标视频,向所述推送服务器发送文件重复上报消息,并放弃执行所述根据所述存储位置信息下载并存储所述目标视频的操作;其中,所述文件重复上报消息用于:指示所述用户设备中存储有所述目标视频;
针对每个所述目标视频,若检测所述用户设备中未存储有所述目标视频,执行所述根据所述存储位置信息下载并存储所述目标视频的操作;
所述推送服务器还用于:响应于所述文件重复上报消息,对所述已推送份数减一。
24.根据权利要求18所述的系统,其特征在于,所述用户设备还用于:
在响应于所述推送消息,根据所述存储位置信息下载并存储所述目标视频之后,向所述调度服务器发送注册信息;其中,所述注册信息用于:指示所述用户设备已下载并存储所述目标视频;
所述调度服务器还用于:
存储所述注册信息,以使所述调度服务器在接收到针对所述目标视频的视频访问请求时,基于所述注册信息确定存储所述目标视频的所述用户设备。
25.一种视频访问系统,其特征在于,所述系统包括调度服务器和用户设备,所述用户设备中包括目标用户设备;
所述目标用户设备,用于向所述调度服务器发送视频访问请求;
所述调度服务器,用于判断所述用户设备中的非目标用户设备中是否存储有所述视频访问请求所要访问的目标视频;若是,将所述非目标用户设备中所述目标视频的目标存储地址信息发送给所述目标用户设备;
所述目标用户设备,还用于根据所述目标存储地址信息下载并存储所述目标视频;其中,所述目标视频是所述非目标用户设备按照权利要求1所述的视频存储方法预先下载并存储的。
26.根据权利要求25所述的系统,其特征在于,所述系统还包括中心服务器和边缘服务器;
所述调度服务器,还用于当所述非目标用户设备中未存储有所述视频访问请求所要访问的目标视频时,将所述视频访问请求发送给所述边缘服务器;
所述边缘服务器,用于从所述边缘服务器本地或所述中心服务器获取所述视频访问请求所要访问的目标视频,将所述目标视频发送给所述目标用户设备;
所述目标用户设备,还用于接收并存储所述目标视频。
27.根据权利要求25所述的系统,其特征在于,所述调度服务器具体用于:
根据所存储的注册信息,判断所述用户设备中的非目标用户设备中是否存储有所述视频访问请求所要访问的目标视频;其中,所述注册信息用于指示所述用户设备已下载并存储的视频。
28.根据权利要求25所述的系统,其特征在于,所述调度服务器具体用于:
查找所述用户设备中的非目标用户设备中的、与所述目标用户设备的距离小于预设距离的非目标用户设备;
判断所述小于预设距离的非目标用户设备中是否存储有所述视频访问请求所要访问的目标视频。
29.一种视频存储装置,其特征在于,应用于推送服务器,所述装置包括:
第一接收模块,用于接收用户设备发送的信息推送请求;其中,所述信息推送请求中携带有所述用户设备的设备信息;所述设备信息包括所述用户设备的在线时长信息、所述用户设备的存储量信息和所述用户设备的下载速率信息;所述用户设备的在线时长信息用于确定所述用户设备的在线稳定性评分;
查找模块,用于基于所述设备信息,查找待推送给所述用户设备的目标视频的存储位置信息;
发送模块,用于将携带所述存储位置信息的推送消息,发送给所述用户设备;其中,所述推送消息用于:指示所述用户设备根据所述存储位置信息下载并存储所述目标视频;所述待推送给所述用户设备的目标视频的存储位置信息是基于所述在线稳定性评分和各视频的第一拷贝比计算得到的,其中,每个视频所对应的第一拷贝比是调度服务器基于该视频所对应的下载次数和该视频的预估读取数计算得到的。
30.根据权利要求29所述的装置,其特征在于,所述查找模块包括:
接收单元,用于接收调度服务器发送的待推送视频的第一拷贝比和第一存储位置信息;其中,所述待推送视频的第一拷贝比小于预设阈值;所述待推送视频的第一拷贝比为所述待推送视频的下载次数与所述待推送视频的预估读取数的比值;所述预估读取数为每个所述视频在全网的预估访问量;
计算单元,用于基于所述用户设备的在线时长信息,计算所述用户设备的在线稳定性评分;
第一查找单元,用于从预设在线稳定性评分和预设第一拷贝比的映射关系中,查找所述用户设备的在线稳定性评分所对应预设第一拷贝比作为目标拷贝比;
第二查找单元,用于从所述待推送视频的第一拷贝比和第一存储位置信息中,查找所述目标拷贝比对应的第一存储位置信息,作为待推送给所述用户设备的目标视频的存储位置信息。
31.根据权利要求30所述的装置,其特征在于,所述在线时长信息包括:所述用户设备发送所述信息推送请求的发送时刻与距离所述发送时刻最近的开机时刻之间的时长信息;
或,所述用户设备中的视频客户端发送所述信息推送请求的发送时刻,与距离所述发送时刻最近的所述视频客户端登录时刻之间的时长信息。
32.一种视频存储装置,其特征在于,应用于用户设备,所述装置包括:
第一发送模块,用于向推送服务器发送信息推送请求;其中,所述信息推送请求中携带有所述用户设备的设备信息;所述设备信息包括所述用户设备的在线时长信息、所述用户设备的存储量信息和所述用户设备的下载速率信息;所述用户设备的在线时长信息用于确定所述用户设备的在线稳定性评分;
第二接收模块,用于接收所述推送服务器所发送的推送消息;其中,所述推送消息中携带有基于所述设备信息所确定的、待推送给所述用户设备的目标视频的存储位置信息;所述待推送给所述用户设备的目标视频的存储位置信息是基于所述在线稳定性评分和各视频的第一拷贝比计算得到的,其中,每个视频所对应的第一拷贝比是调度服务器基于该视频所对应的下载次数和该视频的预估读取数计算得到的;
第一存储模块,用于响应于所述推送消息,从所述存储位置信息下载并存储所述目标视频。
33.根据权利要求32所述的装置,其特征在于,所述第一存储模块具体用于:
当检测到所述用户设备不存在下载任务时,响应于所述推送消息,根据所述存储位置信息下载并存储所述目标视频。
34.一种视频访问装置,其特征在于,应用于用户设备,所述装置包括:
第二发送模块,用于向调度服务器发送视频访问请求;其中,所述视频访问请求用于请求访问目标视频;
第三接收模块,用于接收所述调度服务器发送的、其他用户设备中所述目标视频的目标存储地址信息;其中,所述目标视频是所述其他用户设备根据推送服务器发送的推送消息中携带的存储地址信息下载并存储得到的;所述存储地址信息是所述推送服务器基于所述其他用户设备的设备信息确定得到的;
第二存储模块,用于根据所述目标存储地址信息按照权利要求1所述的视频存储方法下载并存储所述目标视频。
35.一种推送服务器,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求8-10任一所述的方法步骤。
36.一种用户设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求11-12任一所述的方法步骤,或,权利要求17所述的方法步骤。
37.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被推送服务器的处理器执行时实现权利要求8-10任一所述的方法步骤。
38.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被用户设备的处理器执行时实现权利要求11-12任一所述的方法步骤,或,权利要求17所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910944085.1A CN110677683B (zh) | 2019-09-30 | 2019-09-30 | 视频存储、视频访问方法及分布式存储、视频访问系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910944085.1A CN110677683B (zh) | 2019-09-30 | 2019-09-30 | 视频存储、视频访问方法及分布式存储、视频访问系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110677683A CN110677683A (zh) | 2020-01-10 |
CN110677683B true CN110677683B (zh) | 2022-03-04 |
Family
ID=69078742
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910944085.1A Active CN110677683B (zh) | 2019-09-30 | 2019-09-30 | 视频存储、视频访问方法及分布式存储、视频访问系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110677683B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114995214A (zh) * | 2021-05-28 | 2022-09-02 | 上海云盾信息技术有限公司 | 远程访问应用的方法、系统、装置、设备及存储介质 |
CN114828291A (zh) * | 2022-04-25 | 2022-07-29 | 北京京东方技术开发有限公司 | 一种建立连接的方法、设备及服务器 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101005369A (zh) * | 2006-01-19 | 2007-07-25 | 深圳市瑞福特信息技术有限公司 | 一种分布式内容分发网及分布式内容分发和上传的方法 |
CN101345690A (zh) * | 2007-07-12 | 2009-01-14 | 中国电信股份有限公司 | 电信级p2p网络的内容分级存储及传送方法 |
CN101917482A (zh) * | 2010-08-23 | 2010-12-15 | 宇龙计算机通信科技(深圳)有限公司 | 一种信息推送方法及信息推送服务器 |
CN104125559A (zh) * | 2013-04-28 | 2014-10-29 | 华为终端有限公司 | 一种数据传输的方法、装置及系统 |
CN104967685A (zh) * | 2015-06-25 | 2015-10-07 | 广东德诚网络科技有限公司 | 基于Flash P2P的流媒体多级缓存网络加速方法 |
CN106230896A (zh) * | 2016-07-18 | 2016-12-14 | 深圳国泰安教育技术股份有限公司 | 一种消息推送方法、装置及系统 |
CN106899641A (zh) * | 2015-12-21 | 2017-06-27 | 北京奇虎科技有限公司 | 数据资源的获取方法、服务器、控制设备和通信系统 |
CN107862552A (zh) * | 2017-11-10 | 2018-03-30 | 北京智钥科技有限公司 | 广告信息推送方法、装置及系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8291277B2 (en) * | 2009-10-29 | 2012-10-16 | Cleversafe, Inc. | Data distribution utilizing unique write parameters in a dispersed storage system |
US10042709B2 (en) * | 2011-06-06 | 2018-08-07 | International Business Machines Corporation | Rebuild prioritization during a plurality of concurrent data object write operations |
US10448062B2 (en) * | 2016-10-26 | 2019-10-15 | International Business Machines Corporation | Pre-fetching media content to reduce peak loads |
CN108121511B (zh) * | 2017-12-21 | 2022-05-27 | 北京猫盘技术有限公司 | 一种分布式边缘存储系统中的数据处理方法、装置及设备 |
CN109887098B (zh) * | 2019-02-13 | 2023-01-17 | 浙江传媒学院 | 一种基于分布式计算的web AR数据呈现方式 |
-
2019
- 2019-09-30 CN CN201910944085.1A patent/CN110677683B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101005369A (zh) * | 2006-01-19 | 2007-07-25 | 深圳市瑞福特信息技术有限公司 | 一种分布式内容分发网及分布式内容分发和上传的方法 |
CN101345690A (zh) * | 2007-07-12 | 2009-01-14 | 中国电信股份有限公司 | 电信级p2p网络的内容分级存储及传送方法 |
CN101917482A (zh) * | 2010-08-23 | 2010-12-15 | 宇龙计算机通信科技(深圳)有限公司 | 一种信息推送方法及信息推送服务器 |
CN104125559A (zh) * | 2013-04-28 | 2014-10-29 | 华为终端有限公司 | 一种数据传输的方法、装置及系统 |
CN104967685A (zh) * | 2015-06-25 | 2015-10-07 | 广东德诚网络科技有限公司 | 基于Flash P2P的流媒体多级缓存网络加速方法 |
CN106899641A (zh) * | 2015-12-21 | 2017-06-27 | 北京奇虎科技有限公司 | 数据资源的获取方法、服务器、控制设备和通信系统 |
CN106230896A (zh) * | 2016-07-18 | 2016-12-14 | 深圳国泰安教育技术股份有限公司 | 一种消息推送方法、装置及系统 |
CN107862552A (zh) * | 2017-11-10 | 2018-03-30 | 北京智钥科技有限公司 | 广告信息推送方法、装置及系统 |
Non-Patent Citations (1)
Title |
---|
边缘存储的发展现状与挑战;刘铎;《中兴通讯技术》;20190531;第15-22页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110677683A (zh) | 2020-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10812358B2 (en) | Performance-based content delivery | |
US10027739B1 (en) | Performance-based content delivery | |
US11665239B2 (en) | Sensor data search platform | |
CN110661879B (zh) | 节点调度方法、装置、系统、调度服务器及终端设备 | |
CN111327647B (zh) | 一种容器对外提供服务的方法、装置及电子设备 | |
CN110830565B (zh) | 资源下载方法、装置、系统、电子设备及存储介质 | |
CN110677684B (zh) | 视频处理、视频访问方法及分布式存储、视频访问系统 | |
CN107395783B (zh) | 一种ip地址处理方法、系统、装置及电子设备 | |
US12052144B2 (en) | Prediction of a performance indicator | |
CN110677683B (zh) | 视频存储、视频访问方法及分布式存储、视频访问系统 | |
CN110213653B (zh) | 一种播放视频的方法及装置 | |
US20150220438A1 (en) | Dynamic hot volume caching | |
CN110944220A (zh) | 视频投屏播放方法、装置、设备及系统 | |
CN111562889A (zh) | 数据处理方法、装置、系统及存储介质 | |
CN111556135A (zh) | 一种请求调度方法、系统、装置及电子设备 | |
CN108093036B (zh) | 一种获取资源的方法及装置 | |
US11297131B2 (en) | Method and apparatus for multi-vendor GTM fabric | |
CN111064802B (zh) | 一种网络请求的处理方法、装置、电子设备及存储介质 | |
US10742758B2 (en) | Communication analysis device, communication analysis method, and program recording medium | |
CN110309028B (zh) | 监控信息获取方法、服务监控方法、装置及系统 | |
CN110955460A (zh) | 一种服务进程启动方法、装置、电子设备和存储介质 | |
CN108574610B (zh) | 一种压力测试方法、装置、电子设备及介质 | |
CN108512698B (zh) | 一种网络容灾方法、装置及电子设备 | |
CN115086194A (zh) | 云应用的数据传输方法、计算设备及计算机存储介质 | |
CN114338386A (zh) | 一种网络的配置方法、装置、电子设备及存储介质 |
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 |