CN111711860A - 一种视频推荐滤重方法、装置、服务器及存储介质 - Google Patents

一种视频推荐滤重方法、装置、服务器及存储介质 Download PDF

Info

Publication number
CN111711860A
CN111711860A CN202010410974.2A CN202010410974A CN111711860A CN 111711860 A CN111711860 A CN 111711860A CN 202010410974 A CN202010410974 A CN 202010410974A CN 111711860 A CN111711860 A CN 111711860A
Authority
CN
China
Prior art keywords
data
video
file
bloom
identification information
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.)
Granted
Application number
CN202010410974.2A
Other languages
English (en)
Other versions
CN111711860B (zh
Inventor
郭志强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN202010410974.2A priority Critical patent/CN111711860B/zh
Publication of CN111711860A publication Critical patent/CN111711860A/zh
Application granted granted Critical
Publication of CN111711860B publication Critical patent/CN111711860B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/466Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/4668Learning process for intelligent management, e.g. learning user preferences for recommending movies for recommending content, e.g. movies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/251Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/454Content or additional data filtering, e.g. blocking advertisements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/466Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/4667Processing of monitored end-user data, e.g. trend analysis based on the log file of viewer selections

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明实施例涉及一种视频推荐滤重方法、装置、服务器及存储介质,包括:获取视频推荐请求;根据视频推荐请求,获取待推荐的至少一个视频信息;从至少一个视频信息中过滤已被第一布隆文件和/或第二布隆文件记录过的视频信息,其中,第一布隆文件包括:根据用户终端设备上传的观影日志生成的文件,观影日志为以当前时刻对应的前一个单位时间为基准,往前回溯第一固定时间段的观影日志;第二布隆文件包括:根据服务器向用户终端设备推荐的,并且是以当前时刻为基准往前回溯第二固定时间段的视频信息生成的文件;将经过过滤后剩余的视频信息推荐至所述用户终端设备。通过该种方式,高效、准确的为用户过滤已经观看过的视频,推荐未观看过的视频。

Description

一种视频推荐滤重方法、装置、服务器及存储介质
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种视频推荐滤重方法、装置、服务器及存储介质。
背景技术
推荐引擎推荐视频时,需要对用户近一段时间观看的视频进行过滤处理,即用户最近看到过的视频将不再给用户展示,这个过程要求快速处理(毫秒级别),并且支持海量的浏览数据的过滤。
如果要判断一个元素是不是在一个集合里,一般想到的是将集合中所有元素保存起来,然后通过比较确定。类似的道理,推荐引擎推荐视频时,同样需要将某一个视频和用户已经观看过的视频进行比较,然后筛选过滤处理。但是随着用户看过的视频集合中视频元素数量的增加,需要的存储空间越来越大,同时检索速度也越来越慢。使用这种技术实现观影曝光滤重,需要占用大量的缓存空间,并且在推荐引擎面对更多用户发送的观影请求,需要进行高并发查询时,查询效率更是存在瓶颈,而且随着数据量的增大,查询的准确率也会降低。
那么,如何高效、准确的为用户过滤已经观看过的视频,推荐未观看过的视频,成为本申请亟待解决的技术问题。
发明内容
鉴于此,为解决上述技术问题或部分技术问题,本发明实施例提供一种视频推荐滤重方法、装置、服务器及存储介质。
第一方面,本发明实施例提供一种视频推荐滤重方法,该方法包括:
获取视频推荐请求;
根据视频推荐请求,获取待推荐的至少一个视频信息;
从至少一个视频信息中过滤已被第一布隆文件和/或第二布隆文件记录过的视频信息,其中,第一布隆文件包括:根据用户终端设备上传的观影日志生成的文件,观影日志为以当前时刻对应的前一个单位时间为基准,往前回溯第一固定时间段的观影日志;第二布隆文件包括:根据服务器向用户终端设备推荐的,并且是以当前时刻为基准往前回溯第二固定时间段的视频信息生成的文件;
将经过过滤后剩余的视频信息推荐至用户终端设备。
在一个可能的实施方式中,第一布隆文件具体包括:根据用户终端设备对应的第一标识信息和第一类视频中每一个视频分别对应的第二标识信息生成的数据。
在一个可能的实施方式中,当根据第一标识信息和第二标识信息生成的数据为哈希数据时,该方法包括:
对第一标识信息和第二标识信息进行编码处理,获取byte数组;
对byte数组按照新生成的哈希桶的数量取模数;
将哈希数据存储到与模数对应的新生成的哈希桶中;
直至将以当前时刻对应的前一个单位时间为基准,往前回溯第一固定时间段生成的哈希数据均存储至新生成的哈希桶后,废除掉旧的哈希桶,以及旧的哈希桶中存储的哈希数据,其中旧的哈希桶为存储以当前时刻之前对应的第二个单位时间为基准,往前回溯第一固定时间段生成的哈希数据的哈希桶。
在一个可能的实施方式中,从至少一个视频信息中过滤已被第一布隆文件记录过的视频信息,具体包括:
根据第一标识信息和第一视频信息包含的第三标识信息生成第一哈希数据;
从新生成的哈希桶中查询第一哈希数据;
当从新生成的哈希桶中查询到第一哈希数据时,从至少一个视频信息中过滤掉第一视频信息,第一视频信息为至少一个视频信息中任一个视频信息。
在一个可能的实施方式中,第二布隆文件具体包括:根据用户终端设备对应的第一标识信息和第二类视频中每一个视频分别对应的第四标识信息生成的数据,其中第四标识信息为从服务器向用户终端设备推荐的视频信息中提取的标识信息,服务器向用户终端设备推荐的视频定义为第二类视频。
在一个可能的实施方式中,第二布隆文件包括第一数据组和第二数据组;根据第一标识信息和第四标识信息生成第二布隆文件时,该方法包括:
将第一数据组中的数据和第二数据组中的数据写入主数据分组中;将第一数据组中的数据写入从数据分组中;以便在下一个单位时间的预设时刻,将从数据分组转换为下一个单位时间对应的主数据分组,其中,第一数据分组中的数据为以当前时刻为基准,往前回溯到当前时刻所属单位时间起始时刻生成的所有数据;第二数据组中的数据为当前时刻之前的前一个单位时间生成的所有数据;以当前时刻为起始点,往前回溯至当前时刻之前的前一个单位时间起始时刻为终止点,构成第二固定时间段。
第二方面,本发明实施例提供一种视频推荐滤重装置,该装置包括:
获取单元,用于获取视频推荐请求;
根据视频推荐请求,获取待推荐的至少一个视频信息;
处理单元,用于从至少一个视频信息中过滤已被第一布隆文件和/或第二布隆文件记录过的视频信息,其中,第一布隆文件包括:根据用户终端设备上传的观影日志生成的文件,观影日志为以当前时刻对应的前一个单位时间为基准,往前回溯第一固定时间段的观影日志;第二布隆文件包括:根据服务器向用户终端设备推荐的,并且是以当前时刻为基准往前回溯第二固定时间段的视频信息生成的文件;
发送单元,用于将经过过滤后剩余的视频信息推荐至用户终端设备。
在一个可能的实施方式中,第一布隆文件具体包括:根据用户终端设备对应的第一标识信息和第一类视频中每一个视频分别对应的第二标识信息生成的数据。
在一个可能的实施方式中,第二布隆文件具体包括:根据用户终端设备对应的第一标识信息和第二类视频中每一个视频分别对应的第四标识信息生成的数据,其中第四标识信息为从服务器向用户终端设备推荐的视频信息中提取的标识信息,服务器向用户终端设备推荐的视频定义为第二类视频。
第三方面,本发明实施例提供一种服务器,该服务器包括:至少一个处理器和存储器;
处理器用于执行存储器中存储的视频推荐滤重程序,以实现如第一方面任一实施方式所介绍的视频推荐滤重方法。
第四方面,本发明实施例提供一种计算机存储介质,该计算机存储介质存储有一个或者多个程序,一个或者多个程序可被如第三方面所介绍的服务器执行,以实现如第一方面任一实施方式所介绍的视频推荐滤重方法。
本发明实施例提供的一种视频推荐滤重方法,首先获取视频推荐请求,根据视频推荐请求,获取待推荐的至少一个视频信息。从至少一个视频信息中过滤杯第一布隆文件和/或第二布隆文件记录过的视频信息。然后将经过过滤后剩余的视频信息推荐至用户终端设备。第一布隆文件可以理解为离线数据,其包括根据以当前时刻对应的前一个单位时间为基准,往前回溯第一固定时间段的观影日志生成的文件。而第二布隆文件可以理解为在线数据,其包括根据服务器向用户终端设备推荐的,并且是以当前时刻为基准往前回溯第二固定时间段的视频信息生成的文件。
通过该种方式,将数据按照离线数据和在线数据的方式进行分类存储,可以保证数据完整性,而且短期内也可以在一定程度上,提升布隆过滤器对数据进行过滤时的过滤效率和准确率。离线数据和在线数据均不是全部历史观看的数据,而是固定时间段内,且周期性进行更新的数据。如此一来,每一次采用布隆过滤器过滤数据时,因为需要过滤的数据较少,所以过滤效率大大提高,过滤的准确率也会因为过滤数据少的缘故,有所提升。因此,可以通过该种方式,可以实现高效、准确的为用户过滤近期已经观看过的视频,推荐未观看过的视频。
附图说明
图1为本发明实施例提供的一种视频推荐滤重方法流程示意图;
图2为本发明提供的离线数据生成多个布隆分片示意图;
图3为本发明提供的根据在线数据生成主分组数据和从分组数据的示意图;
图4为本发明实施例提供的一个视频推荐滤重装置结构示意图;
图5为本发明实施例提供的一种服务器结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为便于对本发明实施例的理解,下面将结合附图以具体实施例做进一步的解释说明,实施例并不构成对本发明实施例的限定。
图1为本发明实施例提供的一种视频推荐滤重方法流程示意图,如图1所示,该方法包括:
步骤110,获取视频推荐请求。
步骤120,根据视频推荐请求,获取待推荐的至少一个视频信息。
具体的,用户将会通过终端设备发送视频推荐请求至服务器。服务器在获取视频推荐请求后,根据该视频推荐请求,获取待推荐的至少一个视频信息。
步骤130,从至少一个视频信息中过滤已被第一布隆文件和/或第二布隆文件记录过的视频信息。
具体的,第一布隆文件包括:根据用户终端设备上传的观影日志生成的文件,观影日志为以当前时刻对应的前一个单位时间为基准,往前回溯第一固定时间段的观影日志;第二布隆文件包括:根据服务器向用户终端设备推荐的,并且是以当前时刻为基准往前回溯第二固定时间段的视频信息生成的文件。
布隆过滤器是1970年由布隆提出的。它实际上是一个很长的二进制向量和一系列随机映射函数。布隆过滤器可以用于检索一个元素是否在一个集合中。相比于其它的数据结构,布隆过滤器在空间和时间方面都有巨大的优势。因此,对视频滤重推荐而言,采用布隆过滤器存储数据存在一定的优势。但是,布隆过滤器本申请具有不可删除性的特点,如果将所有生成的数据都存储至同一个布隆文件中,长期以来,由于布隆文件数据量的不断增大,过滤准确率和效率都将会受到影响。在本申请文件中采用第一布隆文件存储由观影日志生成的文件,可以理解为离线数据。采用第二布隆文件存储服务器向用户终端设备推荐的,并且是以当前时刻为基准往前回溯第二固定时间段的视频信息生成的文件。可以理解为是在线文件。
通过将离线文件和在线文件进行分类存储,来降低不同布隆过滤器存储的数据量。短期而言,可以在一定程度上降低布隆过滤器存储数据所占用的内存,提升视频过滤时的效率和准确率。
但是考虑到长期积累,尤其对于离线数据,其数据量必然会有所增加。依然会影响存储第一布隆文件的布隆过滤器的过滤效率和准确率。因而,在本申请文件中,第一布隆文件仅包括根据用户终端设备上传的观影日志生成的文件,而且,观影日志为以当前时刻对应的前一个单位时间为基准,往前回溯第一固定时间段的观影日志。
其中,第一固定时间段由多个单位时间构成,单位时间例如是一天,那么第一固定时间段则可以是几天或者稍微更长一点的时间。在一个具体的例子中,考虑到时间过短不利于视频过滤,例如用户一星期之前刚看的某个视频。若第一固定时间段为5天,那么这个视频必然不会被服务器过滤掉。推荐给用户的话,对用户而言其实是无益的,毕竟最近一段时间才看过该视频,依然记忆犹新。如此操作,必定会降低用户体验度。但是,时间过长数据量必然会随之增加,不利于提高过布隆过滤器过的滤准确率,以及过滤效率。综合考虑,可以设定第一固定时间段为30天。
可选的,在一个具体的例子中,服务器在查询第一布隆文件时,可以采用滑动窗口的形式,例如滑动窗口包含的时间段就是30天。如果单位时间以一日为基准,那么服务器可以每日定时读取以该日之前的前一日为滑动窗口的边界,滑动窗口内所包含的30天内的所有观影日志,然后提取观影日志中的视频信息。并将至少一个视频信息和此刻提取的观影日志中的视频信息进行比对,确定至少一个视频信息中是否存在已被记录的视频信息,若存在则过滤掉。
在上述例子中,可以看出滑动窗口的宽度设置为30天,滑动窗口步长为单位时间,例如为1天。提取观影日志时,可以参见图2所示。图2示出了以滑动窗口的形式提取观影日志的示意图。图中显示的是观影日志生成时间。图2中具体包括12月1日提取的观影日志和12月2日提取的观影日志。如图2所示,12月1日提取的是从11月30日往前回溯30天,到11月1日的观影日志。12月2日提取的是从12月1日往前回溯30天,到11月2日的观影日志。
可选的,第一布隆文件具体包括:根据用户终端设备对应的第一标识信息和第一类视频中每一个视频分别对应的第二标识信息生成的数据。其中,从观影日志中提取的视频信息对应的视频作为第一类视频。
具体的,第一布隆文件包括多份数据,每一份数据均是根据第一标识信息和第一类视频中的一个视频对应的第二标识信息生成。
第一标识信息用于识别用户终端设备,第二标识信息用于识别用户终端设备已经观看过的视频信息。因此,根据第一标识信息和第二标识信息生成第一布隆文件,就是为了方便后续采用布隆过滤器进行识别时,有一定的辨识度。例如,当用户通过终端设备发送视频推荐请求时,服务器可以根据视频推荐请求获取一定数量的视频。然后将用户此刻用的终端设备的第一标识信息和待推荐的每一个视频对应的第二标识信息生成数据后,将这个数据,与第一布隆文件中已经存储的数据进行比对,由此验证之前是否已经向该终端设备推荐过这个些视频,如果推荐过,此次则从待推荐的视频信息中过滤掉,否则推送至终端设备,由此实现对第一布隆文件的过滤。
在一个具体的例子中,第一标识信息可以是终端设备对应的ID信息,第二标识信息可以是第一类视频中每一个视频分别对应的视频ID。
那么,服务器从图2所示的观影日志中提取的就是终端设备对应的ID和视频ID。然后,采用布隆过滤器对终端设备ID和视频ID进行处理,生成第一布隆文件并存储。
进一步可选的,考虑到在某些特殊情况中,如果用户在第一固定时间段内观看的视频量足够大,依然会有可能导致第一布隆文件中的数据量很大,使得布隆过滤器存在过滤效率低和准确度不高的风险。
因此,当根据第一标识信息和第二标识信息生成的数据为哈希数据时,该方法还可以包括:在生成第一布隆文件时,将数据进行分片存储。
具体的,服务器每一次统计出第一布隆文件中数据总量后。根据当前规模设定的哈希桶总数量和每一个哈希桶内存来确定是否能够满足布隆过滤器的准确率的要求。具体计算布隆过滤器的方法为现有技术,其可以根据当前每一个哈希桶的内存、布隆过滤器要执行的哈希次数以及第一布隆文件中的数据总量来计算。
一旦确定当前哈希桶的内存和哈希桶总量能够满足布隆过滤器的准确率要求时,则按照当前规模生成新生成的哈希桶,用于存储当前生成的第一布隆文件。具体操作如下:
首先可以对第一标识信息和第二标识信息进行编码处理,获取byte数组。
然后,对byte数组按照新生成的哈希桶的数量取模数。
最后,将哈希数据存储到与模数对应的新生成的哈希桶中;直至将以当前时刻对应的前一个单位时间为基准,往前回溯第一固定时间段生成的哈希数据均存储至新生成的哈希桶后,废除掉旧的哈希桶,以及旧的哈希桶中存储的哈希数据,其中旧的哈希桶为存储以当前时刻之前对应的第二个单位时间为基准,往前回溯第一固定时间段生成的哈希数据的哈希桶。即,如果单位时间为1天,第一固定时间为30天的话,那么在某天已经生成新生成的哈希桶,并将某天之前的前一天为基准,往前回溯30天生成的哈希数据已经存储至新生成的哈希桶后,就可以废弃掉他的前一天生成的旧的哈希桶,以及旧的哈希桶存储的数据了。
之所以将哈希数据存储到与模数对应的新生成的哈希桶中,而废除掉旧的哈希桶,以及旧的哈希桶中存储的哈希数据。原因就在于,布隆过滤器存在不可删除性的特点。如果将每次从滑动窗口提取的离线数据均存储至同一个哈希桶中,长时间后就会导致哈希桶中存储的数据量过大,占用内存过多而影响过滤效率和准确度。另外,哈希桶可能存在存储空间不足的情况发生。而通过将哈希数据存储到与模数对应的哈希桶,就是为了解决离线数据均存储至同一个哈希桶,导致哈希桶中数据量过大的问题。而存储至新生成的哈希桶,就是因为在生成哈希桶之前,可以对哈希桶进行动态扩容。根据当前需要存储的哈希数据所占用的存储量,来灵活设置新生成的哈希桶的内存。然后根据实际哈希数据占用内存情况,将哈希数据分别存储到不同的新生成的哈希桶。由此实现动态扩容。让新生成的哈希桶能够有足够的存储空间存储当前生成的哈希数据。既然已经生成了新生成的哈希桶,用于存储当前时刻对应的前一个单位时间为基准,往前回溯第一固定时间段生成的哈希数据。那么,自然可以废弃掉旧的哈希桶,以及旧的哈希桶中存储的哈希数据了。众所周知,一般一个哈希桶存储在一个布隆过滤器中,因此,将哈希数据存储至不同的哈希桶,实际也就是将哈希数据分片存储至不同的布隆过滤器中。即,通过上述方式,实现在第一类布隆文件生成时,直接将生成的数据进行分片存储。
具体参见图2所示,图2中实际上在后续就执行了从12月1日生成的观影日志中提取了终端设备ID和视频ID,根据终端设备ID和视频ID生成byte数组,也即是哈希数据。并根据哈希数据确定存储到哪一个哈希桶。图2中显示的是形成多个布隆分片,也即是生成多个新生成的哈希桶。类似的道理,同样对12月2日提取的观影日志执行了类似的处理。
进一步可选的,为了防止服务器发生损坏,导致数据丢失。因此服务器可以将当前存储的第一布隆文件备份至云服务器。而由于第一布隆文件是随着时间不断更新的,所以云服务器也会随着第一布隆文件的更新,替换掉已经存储的旧的第一布隆文件,更新存储新获取的第一布隆文件。而且,通过云服务器还可以实现数据共享。即,如果服务器发生损坏,其他服务器也可以从云服务器调取第一布隆文件,方便后续采用其他服务器过滤视频信息。
还需要说明的是,新生成的哈希桶的内存和哈希桶的数量是根据人为经验确定的。一旦根据上述方式确定布隆过滤器的准确率达不到要求时,就说明当前规模的哈希桶总数量和哈希桶的内存可能不够,此时服务器还可以通过报警方式告知工作人员,由工作人员重新配置哈希桶总数量以及哈希桶内存。然后按照该配置生成新生成的哈希桶。当然,如果工作人员自身发现了上述不足,也可以直接对哈希桶总数量以及哈希桶内存等进行动态扩容。
进一步可选的,在上述论述的基础上,从至少一个视频信息中过滤已被第一布隆文件记录过的视频信息,具体可以包括:
根据第一标识信息和第一视频信息包含的第三标识信息生成第一哈希数据;
从新生成的哈希桶中查询第一哈希数据;
当从新生成的哈希桶中查询到第一哈希数据时,从至少一个视频信息中过滤掉第一视频信息,第一视频信息为至少一个视频信息中任一个视频信息。
具体的,例如当前服务器获取的待推荐的视频为第一视频。与第一视频对应的标识信息为第三标识信息,第三标识信息与第二标识信息为同一类内容。例如,可以是视频ID。用户终端设备对应的第一标识信息为用户终端设备ID。那么,则根据用户终端设备ID和第一视频对应的视频ID生成第一哈希数据,然后从新生成的哈希桶中查询第一哈希数据。如果能够从新生成的哈希桶中查询到第一哈希数据,则说明用户在此前的一段时间段内(例如前30天)已经观看过该视频。那么服务器可以从待推荐的至少一个视频信息中过滤掉第一视频信息,将其他视频信息发送至用户终端设备,以便供用户观看。
上述,已经对第一布隆文件的相关内容介绍完毕,下文中将侧重介绍第二布隆文件的相关内容。
优选的,在本申请文件中,虽然存储在线数据的方式同样是采用布隆过滤器。即,利用第二布隆文件存储服务器向用户终端设备推荐的,并且是以当前时刻为基准往前回溯第二固定时间段的视频信息生成的文件。
但是,实际在具体执行过程中,存储在线数据的方式并非必须使用布隆文件。其原因在于,在线数据一般是指以当前时刻为基准短期内向用户推荐的视频信息生成的文件。这类数据量不会很大,也不会占用很多内存。在服务器对其进行过滤时,不会因为数据量过大而导致过滤效率的降低。因此,可以不采用布隆过滤器来完成对此类数据的过滤。而采用其他方式进行存储,然后由服务器进行过滤即可。
可选的,当第二布隆文件是利用布隆过滤器生成时,第二布隆文件具体包括:根据用户终端设备对应的第一标识信息和第二类视频中每一个视频分别对应的第四标识信息生成的数据,其中第四标识信息为从服务器向用户终端设备推荐的视频信息中提取的标识信息,服务器向用户终端设备推荐的视频定义为第二类视频。
具体的,服务器在确定好本次要向用户终端设备推荐的视频后,会根据此次向用户终端设备推荐视频对应的第四标识信息,以及用户终端设备对应的第一标识信息生成数据存储至第二布隆文件中。其中,第一标识信息可以是用户终端设备ID,第四标识信息可以是视频ID。这里所说的第二类视频,也就可以理解为在线数据。
进一步可选的,第二布隆文件包括第一数据组和第二数据组;根据第一标识信息和第四标识信息生成第二布隆文件时,方法包括:
将第一数据组中的数据和第二数据组中的数据写入主数据分组中;将第一数据组中的数据写入从数据分组中;以便在下一个单位时间的预设时刻,将从数据分组转换为下一个单位时间对应的主数据分组。
具体的,第一数据分组中的数据为以当前时刻为基准,往前回溯到当前时刻所属单位时间起始时刻生成的所有数据;第二数据组中的数据为当前时刻之前的前一个单位时间生成的所有数据;以当前时刻为起始点,往前回溯至当前时刻之前的前一个单位时间起始时刻为终止点,构成第二固定时间段。
具体参见图3所示,图3示出了12月1日生成的第二布隆文件,包含11月30日生成的数据和12月1日生成的数据构成主分组数据。仅包含12月1日生成的实时数据的为从分组数据。其中图中用虚线表示的日期中的数据为之前的第二布隆文件所包含的数据。并非包含在12月1日双写数据中。类似的道理,12月2日生成的布隆文件中包括12月1日生成的数据和12月2日生成的数据的为主分组数据;仅包括12月2日的实时数据的为从分组数据。其中,12月2日的主分组数据就是从12月1日生成的第二布隆文件中的从分组数据转换为12月2日生成的第二布隆文件中的主分组数据后,继续写入12月2日的数据的。
例如,在12月2日的预设时刻(例如凌晨5时)时,12月1日的第一布隆文件生成完成后,再将12月1日第二布隆文件的从分组数据切换成为12月2日的第二布隆文件中的主分组数据。通过该种方式,时刻保证第一布隆文件和第二布隆文件之间存在一定交集,例如本实施例中所指的交集就是,离线数据和在线数据之间,存在一天数据(例如12月1日生成的数据)的交集。由此,实现存储数据的完整性。
上述将第二布隆文件分为主从分组数据进行存储,是以在线数据同样是以布隆文件形式存储的内容介绍。如果并非以布隆文件形式存储时,则并不用分为主从分组数据。而是将所有的数据按照时间顺序存储即可。例如,每天生成新的数据时,直接存储至存储器。在具体执行时,可以采用缓存技术进行存储,例如Redis,CouchBase等。缓存技术本身的特点就是,数据经过一段时间后会自动失效。通过这种方式,也可以避免长时间存储在线数据导致数据量过大,影响过滤效率和准确度等的问题。
在对在线数据进行过滤时,如果采用的是布隆方式存储。那么,服务器只要对主分组数据进行过滤即可。而如果使用的是非布隆方式存储时,则需要对整个缓存文件进行过滤。具体的,就是查询缓存文件中否有视频信息记录,如果至少一个视频信息中某些视频信息在缓存文件中有记录,则证明之前已经被推送至终端设备,那么需要将这部分视频信息在向终端设备推荐之前过滤掉,如果没有,则将所有待推荐视频信息均返回至用户终端设备,并在缓存文件中记录本次推荐给用户终端设备的视频信息。
步骤140,将经过过滤后剩余的视频信息推荐至用户终端设备。
具体的,通过步骤130所介绍的方式过滤掉已经在近期为用户推荐过的视频后,将剩余的视频信息推荐至用户终端设备,以方便用户自行观看。
本发明实施例提供的视频推荐滤重方法,首先获取视频推荐请求,根据视频推荐请求,获取待推荐的至少一个视频信息。从至少一个视频信息中过滤杯第一布隆文件和/或第二布隆文件记录过的视频信息。然后将经过过滤后剩余的视频信息推荐至用户终端设备。第一布隆文件可以理解为离线数据,其包括根据以当前时刻对应的前一个单位时间为基准,往前回溯第一固定时间段的观影日志生成的文件。而第二布隆文件可以理解为在线数据,其包括根据服务器向用户终端设备推荐的,并且是以当前时刻为基准往前回溯第二固定时间段的视频信息生成的文件。
通过该种方式,将数据按照离线数据和在线数据的方式进行分类存储,可以保证数据完整性,而且短期内也可以在一定程度上,提升布隆过滤器对数据进行过滤时的过滤效率和准确率。离线数据和在线数据均不是全部历史观看的数据,而是固定时间段内,且周期性进行更新的数据。如此一来,每一次采用布隆过滤器过滤数据时,因为需要过滤的数据较少,所以过滤效率大大提高,过滤的准确率也会因为过滤数据少的缘故,有所提升。因此,可以通过该种方式,可以实现高效、准确的为用户过滤近期已经观看过的视频,推荐未观看过的视频。
图4为本发明实施例提供的一种视频推荐滤重装置,该装置包括:获取单元401、处理单元402和发送单元403。
获取单元401,用于获取视频推荐请求;
根据视频推荐请求,获取待推荐的至少一个视频信息;
处理单元402,用于从至少一个视频信息中过滤已被第一布隆文件和/或第二布隆文件记录过的视频信息,其中,第一布隆文件包括:根据用户终端设备上传的观影日志生成的文件,观影日志为以当前时刻对应的前一个单位时间为基准,往前回溯第一固定时间段的观影日志;第二布隆文件包括:根据服务器向用户终端设备推荐的,并且是以当前时刻为基准往前回溯第二固定时间段的视频信息生成的文件;
发送单元403,用于将经过过滤后剩余的视频信息推荐至用户终端设备。
可选的,第一布隆文件具体包括:根据用户终端设备对应的第一标识信息和第一类视频中每一个视频分别对应的第二标识信息生成的数据。
可选的,当根据第一标识信息和第二标识信息生成的数据为哈希数据时,处理单元402具体用于,对第一标识信息和第二标识信息进行编码处理,获取byte数组;
对byte数组按照新生成的哈希桶的数量取模数;
将哈希数据存储到与模数对应的新生成的哈希桶中;
直至将以当前时刻对应的前一个单位时间为基准,往前回溯第一固定时间段生成的哈希数据均存储至新生成的哈希桶后,废除掉旧的哈希桶,以及旧的哈希桶中存储的哈希数据,其中旧的哈希桶为存储以当前时刻之前对应的第二个单位时间为基准,往前回溯第一固定时间段生成的哈希数据的哈希桶。
可选的,处理单元402具体用于,根据第一标识信息和第一视频信息包含的第三标识信息生成第一哈希数据;
从新生成的哈希桶中查询第一哈希数据;
当从新生成的哈希桶中查询到第一哈希数据时,从至少一个视频信息中过滤掉第一视频信息,第一视频信息为至少一个视频信息中任一个视频信息。
可选的,第二布隆文件具体包括:根据用户终端设备对应的第一标识信息和第二类视频中每一个视频分别对应的第四标识信息生成的数据,其中第四标识信息为从服务器向用户终端设备推荐的视频信息中提取的标识信息,服务器向用户终端设备推荐的视频定义为第二类视频。
进一步可选的,第二布隆文件包括第一数据组和第二数据组;处理单元402具体用于,将第一数据组中的数据和第二数据组中的数据写入主数据分组中;将第一数据组中的数据写入从数据分组中;以便在下一个单位时间的预设时刻,将从数据分组转换为下一个单位时间对应的主数据分组,其中,第一数据分组中的数据为以当前时刻为基准,往前回溯到当前时刻所属单位时间起始时刻生成的所有数据;第二数据组中的数据为当前时刻之前的前一个单位时间生成的所有数据;以当前时刻为起始点,往前回溯至当前时刻之前的前一个单位时间起始时刻为终止点,构成第二固定时间段。
本实施例提供的视频推荐滤重装置中各功能部件所执行的功能均已在图1对应的实施例中做了详细介绍,因此这里不再赘述。
本发明实施例提供的一种视频推荐滤重装置,首先获取视频推荐请求,根据视频推荐请求,获取待推荐的至少一个视频信息。从至少一个视频信息中过滤杯第一布隆文件和/或第二布隆文件记录过的视频信息。然后将经过过滤后剩余的视频信息推荐至用户终端设备。第一布隆文件可以理解为离线数据,其包括根据以当前时刻对应的前一个单位时间为基准,往前回溯第一固定时间段的观影日志生成的文件。而第二布隆文件可以理解为在线数据,其包括根据服务器向用户终端设备推荐的,并且是以当前时刻为基准往前回溯第二固定时间段的视频信息生成的文件。
通过该种方式,将数据按照离线数据和在线数据的方式进行分类存储,可以保证数据完整性,而且短期内也可以在一定程度上,提升布隆过滤器对数据进行过滤时的过滤效率和准确率。离线数据和在线数据均不是全部历史观看的数据,而是固定时间段内,且周期性进行更新的数据。如此一来,每一次采用布隆过滤器过滤数据时,因为需要过滤的数据较少,所以过滤效率大大提高,过滤的准确率也会因为过滤数据少的缘故,有所提升。因此,可以通过该种方式,可以实现高效、准确的为用户过滤近期已经观看过的视频,推荐未观看过的视频。
图5为本发明实施例提供的一种服务器结构示意图,图5所示的服务器500包括:至少一个处理器501、存储器502、至少一个网络接口503和其他用户接口504。视频推荐滤重服务器500中的各个组件通过总线系统505耦合在一起。可理解,总线系统505用于实现这些组件之间的连接通信。总线系统505除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图5中将各种总线都标为总线系统505。
其中,用户接口504可以包括显示器、键盘或者点击设备(例如,鼠标,轨迹球(trackball)、触感板或者触摸屏等。
可以理解,本发明实施例中的存储器502可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-OnlyMemory,ROM)、可编程只读存储器(ProgrammableROM,PROM)、可擦除可编程只读存储器(ErasablePROM,EPROM)、电可擦除可编程只读存储器(ElectricallyEPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(RandomAccessMemory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(StaticRAM,SRAM)、动态随机存取存储器(DynamicRAM,DRAM)、同步动态随机存取存储器(SynchronousDRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(DoubleDataRateSDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(SynchlinkDRAM,SLDRAM)和直接内存总线随机存取存储器(DirectRambusRAM,DRRAM)。本文描述的存储器502旨在包括但不限于这些和任意其它适合类型的存储器。
在一些实施方式中,存储器502存储了如下的元素,可执行单元或者数据结构,或者他们的子集,或者他们的扩展集:操作系统5021和应用程序5022。
其中,操作系统5021,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序5022,包含各种应用程序,例如媒体播放器(MediaPlayer)、浏览器(Browser)等,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序5022中。
在本发明实施例中,通过调用存储器502存储的程序或指令,具体的,可以是应用程序5022中存储的程序或指令,处理器501用于执行各方法实施例所提供的方法步骤,例如包括:
获取视频推荐请求;
根据视频推荐请求,获取待推荐的至少一个视频信息;
从至少一个视频信息中过滤已被第一布隆文件和/或第二布隆文件记录过的视频信息,其中,第一布隆文件包括:根据用户终端设备上传的观影日志生成的文件,观影日志为以当前时刻对应的前一个单位时间为基准,往前回溯第一固定时间段的观影日志;第二布隆文件包括:根据服务器向用户终端设备推荐的,并且是以当前时刻为基准往前回溯第二固定时间段的视频信息生成的文件;
将经过过滤后剩余的视频信息推荐至用户终端设备。
可选的,第一布隆文件具体包括:根据用户终端设备对应的第一标识信息和第一类视频中每一个视频分别对应的第二标识信息生成的数据。
可选的,当根据第一标识信息和第二标识信息生成的数据为哈希数据时,对第一标识信息和第二标识信息进行编码处理,获取byte数组;
对byte数组按照新生成的哈希桶的数量取模数;
将哈希数据存储到与模数对应的新生成的哈希桶中;
直至将以当前时刻对应的前一个单位时间为基准,往前回溯第一固定时间段生成的哈希数据均存储至新生成的哈希桶后,废除掉旧的哈希桶,以及旧的哈希桶中存储的哈希数据,其中旧的哈希桶为存储以当前时刻之前对应的第二个单位时间为基准,往前回溯第一固定时间段生成的哈希数据的哈希桶。
可选的,根据第一标识信息和第一视频信息包含的第三标识信息生成第一哈希数据;
从新生成的哈希桶中查询第一哈希数据;
当从新生成的哈希桶中查询到第一哈希数据时,从至少一个视频信息中过滤掉第一视频信息,第一视频信息为至少一个视频信息中任一个视频信息。
可选的,第二布隆文件具体包括:根据用户终端设备对应的第一标识信息和第二类视频中每一个视频分别对应的第四标识信息生成的数据,其中第四标识信息为从服务器向用户终端设备推荐的视频信息中提取的标识信息,服务器向用户终端设备推荐的视频定义为第二类视频。
可选的,第二布隆文件包括第一数据组和第二数据组;根据第一标识信息和第四标识信息生成第二布隆文件时,将第一数据组中的数据和第二数据组中的数据写入主数据分组中;将第一数据组中的数据写入从数据分组中;以便在下一个单位时间的预设时刻,将从数据分组转换为下一个单位时间对应的主数据分组,其中,第一数据分组中的数据为以当前时刻为基准,往前回溯到当前时刻所属单位时间起始时刻生成的所有数据;第二数据组中的数据为当前时刻之前的前一个单位时间生成的所有数据;以当前时刻为起始点,往前回溯至当前时刻之前的前一个单位时间起始时刻为终止点,构成第二固定时间段。
上述本发明实施例揭示的方法可以应用于处理器501中,或者由处理器501实现。处理器501可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器501中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器501可以是通用处理器、数字信号处理器(DigitalSignalProcessor,DSP)、专用集成电路(ApplicationSpecific IntegratedCircuit,ASIC)、现成可编程门阵列(FieldProgrammableGateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件单元组合执行完成。软件单元可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器502,处理器501读取存储器502中的信息,结合其硬件完成上述方法的步骤。
可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(ApplicationSpecificIntegratedCircuits,ASIC)、数字信号处理器(DigitalSignalProcessing,DSP)、数字信号处理设备(DSPDevice,DSPD)、可编程逻辑设备(ProgrammableLogicDevice,PLD)、现场可编程门阵列(Field-ProgrammableGateArray,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请功能的其它电子单元或其组合中。
对于软件实现,可通过执行本文功能的单元来实现本文的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
本实施例提供的服务器可以是如图5中所示的服务器,可执行如图1中视频推荐滤重方法的所有步骤,进而实现图1所示视频推荐滤重方法的技术效果,具体请参照图1相关描述,为简洁描述,在此不作赘述。
本发明实施例还提供了一种存储介质(计算机可读存储介质)。这里的存储介质存储有一个或者多个程序。其中,存储介质可以包括易失性存储器,例如随机存取存储器;存储器也可以包括非易失性存储器,例如只读存储器、快闪存储器、硬盘或固态硬盘;存储器还可以包括上述种类的存储器的组合。
当存储介质中一个或者多个程序可被一个或者多个处理器执行,以实现上述在服务器侧执行的视频推荐滤重方法。
处理器用于执行存储器中存储的视频推荐滤重程序,以实现以下在服务器侧执行的视频推荐滤重方法的步骤:
获取视频推荐请求;
根据视频推荐请求,获取待推荐的至少一个视频信息;
从至少一个视频信息中过滤已被第一布隆文件和/或第二布隆文件记录过的视频信息,其中,第一布隆文件包括:根据用户终端设备上传的观影日志生成的文件,观影日志为以当前时刻对应的前一个单位时间为基准,往前回溯第一固定时间段的观影日志;第二布隆文件包括:根据服务器向用户终端设备推荐的,并且是以当前时刻为基准往前回溯第二固定时间段的视频信息生成的文件;
将经过过滤后剩余的视频信息推荐至用户终端设备。
可选的,第一布隆文件具体包括:根据用户终端设备对应的第一标识信息和第一类视频中每一个视频分别对应的第二标识信息生成的数据。
可选的,当根据第一标识信息和第二标识信息生成的数据为哈希数据时,对第一标识信息和第二标识信息进行编码处理,获取byte数组;
对byte数组按照新生成的哈希桶的数量取模数;
将哈希数据存储到与模数对应的新生成的哈希桶中;
直至将以当前时刻对应的前一个单位时间为基准,往前回溯第一固定时间段生成的哈希数据均存储至新生成的哈希桶后,废除掉旧的哈希桶,以及旧的哈希桶中存储的哈希数据,其中旧的哈希桶为存储以当前时刻之前对应的第二个单位时间为基准,往前回溯第一固定时间段生成的哈希数据的哈希桶。
可选的,根据第一标识信息和第一视频信息包含的第三标识信息生成第一哈希数据;
从新生成的哈希桶中查询第一哈希数据;
当从新生成的哈希桶中查询到第一哈希数据时,从至少一个视频信息中过滤掉第一视频信息,第一视频信息为至少一个视频信息中任一个视频信息。
可选的,第二布隆文件具体包括:根据用户终端设备对应的第一标识信息和第二类视频中每一个视频分别对应的第四标识信息生成的数据,其中第四标识信息为从服务器向用户终端设备推荐的视频信息中提取的标识信息,服务器向用户终端设备推荐的视频定义为第二类视频。
可选的,第二布隆文件包括第一数据组和第二数据组;根据第一标识信息和第四标识信息生成第二布隆文件时,将第一数据组中的数据和第二数据组中的数据写入主数据分组中;将第一数据组中的数据写入从数据分组中;以便在下一个单位时间的预设时刻,将从数据分组转换为下一个单位时间对应的主数据分组,其中,第一数据分组中的数据为以当前时刻为基准,往前回溯到当前时刻所属单位时间起始时刻生成的所有数据;第二数据组中的数据为当前时刻之前的前一个单位时间生成的所有数据;以当前时刻为起始点,往前回溯至当前时刻之前的前一个单位时间起始时刻为终止点,构成第二固定时间段。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种视频推荐滤重方法,其特征在于,所述方法由服务器执行,所述方法包括:
获取视频推荐请求;
根据所述视频推荐请求,获取待推荐的至少一个视频信息;
从所述至少一个视频信息中过滤已被第一布隆文件和/或第二布隆文件记录过的视频信息,其中,所述第一布隆文件包括:根据用户终端设备上传的观影日志生成的文件,所述观影日志为以当前时刻对应的前一个单位时间为基准,往前回溯第一固定时间段的观影日志;所述第二布隆文件包括:根据所述服务器向所述用户终端设备推荐的,并且是以当前时刻为基准往前回溯第二固定时间段的视频信息生成的文件;
将经过过滤后剩余的视频信息推荐至所述用户终端设备。
2.根据权利要求1所述的方法,其特征在于,所述第一布隆文件具体包括:根据用户终端设备对应的第一标识信息和第一类视频中每一个视频分别对应的第二标识信息生成的数据。
3.根据权利要求2所述的方法,其特征在于,当根据所述第一标识信息和所述第二标识信息生成的数据为哈希数据时,所述方法包括:
对所述第一标识信息和所述第二标识信息进行编码处理,获取byte数组;
对所述byte数组按照新生成的哈希桶的数量取模数;
将所述哈希数据存储到与所述模数对应的新生成的哈希桶中;
直至将以所述当前时刻对应的前一个单位时间为基准,往前回溯所述第一固定时间段生成的哈希数据均存储至所述新生成的哈希桶后,废除掉旧的哈希桶,以及所述旧的哈希桶中存储的哈希数据,其中所述旧的哈希桶为存储以当前时刻之前对应的第二个单位时间为基准,往前回溯所述第一固定时间段生成的哈希数据的哈希桶。
4.根据权利要求3所述的方法,其特征在于,所述从所述至少一个视频信息中过滤已被第一布隆文件记录过的视频信息,具体包括:
根据所述第一标识信息和第一视频信息包含的第三标识信息生成第一哈希数据;
从所述新生成的哈希桶中查询所述第一哈希数据;
当从所述新生成的哈希桶中查询到所述第一哈希数据时,从所述至少一个视频信息中过滤掉所述第一视频信息,所述第一视频信息为所述至少一个视频信息中任一个视频信息。
5.根据权利要求1所述的方法,其特征在于,所述第二布隆文件具体包括:根据用户终端设备对应的第一标识信息和第二类视频中每一个视频分别对应的第四标识信息生成的数据,其中所述第四标识信息为从所述服务器向所述用户终端设备推荐的视频信息中提取的标识信息,所述服务器向所述用户终端设备推荐的视频定义为所述第二类视频。
6.根据权利要求5所述的方法,其特征在于,所述第二布隆文件包括第一数据组和第二数据组;根据所述第一标识信息和所述第四标识信息生成所述第二布隆文件时,所述方法包括:
将所述第一数据组中的数据和所述第二数据组中的数据写入主数据分组中;将所述第一数据组中的数据写入从数据分组中;以便在下一个单位时间的预设时刻,将所述从数据分组转换为所述下一个单位时间对应的主数据分组,其中,所述第一数据分组中的数据为以所述当前时刻为基准,往前回溯到所述当前时刻所属单位时间起始时刻生成的所有数据;所述第二数据组中的数据为所述当前时刻之前的前一个单位时间生成的所有数据;以所述当前时刻为起始点,往前回溯至当前时刻之前的前一个单位时间起始时刻为终止点,构成所述第二固定时间段。
7.一种视频推荐滤重装置,其特征在于,所述装置包括:
获取单元,用于获取视频推荐请求;
根据所述视频推荐请求,获取待推荐的至少一个视频信息;
处理单元,用于从所述至少一个视频信息中过滤已被第一布隆文件和/或第二布隆文件记录过的视频信息,其中,所述第一布隆文件包括:根据用户终端设备上传的观影日志生成的文件,所述观影日志为以当前时刻对应的前一个单位时间为基准,往前回溯第一固定时间段的观影日志;所述第二布隆文件包括:根据服务器向所述用户终端设备推荐的,并且是以当前时刻为基准往前回溯第二固定时间段的视频信息生成的文件;
发送单元,用于将经过过滤后剩余的视频信息推荐至所述用户终端设备。
8.根据权利要求7所述的装置,其特征在于,所述第一布隆文件具体包括:根据用户终端设备对应的第一标识信息和第一类视频中每一个视频分别对应的第二标识信息生成的数据。
9.一种服务器,其特征在于,所述服务器包括:至少一个处理器和存储器;
所述处理器用于执行所述存储器中存储的视频推荐滤重程序,以实现权利要求1~6中任一项所述的视频推荐滤重方法。
10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有一个或者多个程序,所述一个或者多个程序可被如权利要求9所述的服务器执行,以实现权利要求1~6中任一项所述的视频推荐滤重方法。
CN202010410974.2A 2020-05-14 2020-05-14 一种视频推荐滤重方法、装置、服务器及存储介质 Active CN111711860B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010410974.2A CN111711860B (zh) 2020-05-14 2020-05-14 一种视频推荐滤重方法、装置、服务器及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010410974.2A CN111711860B (zh) 2020-05-14 2020-05-14 一种视频推荐滤重方法、装置、服务器及存储介质

Publications (2)

Publication Number Publication Date
CN111711860A true CN111711860A (zh) 2020-09-25
CN111711860B CN111711860B (zh) 2022-09-30

Family

ID=72537913

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010410974.2A Active CN111711860B (zh) 2020-05-14 2020-05-14 一种视频推荐滤重方法、装置、服务器及存储介质

Country Status (1)

Country Link
CN (1) CN111711860B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113992923A (zh) * 2021-09-23 2022-01-28 北京达佳互联信息技术有限公司 直播榜单下发方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150046142A1 (en) * 2013-08-07 2015-02-12 Nimble Storage Fifo cache simulation using a bloom filter ring
CN106326431A (zh) * 2016-08-25 2017-01-11 乐视控股(北京)有限公司 一种信息推荐方法和装置
CN108133031A (zh) * 2017-12-29 2018-06-08 北京搜狐新媒体信息技术有限公司 一种过滤推荐视频候选结果的方法及装置
CN109828721A (zh) * 2019-01-23 2019-05-31 平安科技(深圳)有限公司 数据删除方法、装置、计算机设备及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150046142A1 (en) * 2013-08-07 2015-02-12 Nimble Storage Fifo cache simulation using a bloom filter ring
CN106326431A (zh) * 2016-08-25 2017-01-11 乐视控股(北京)有限公司 一种信息推荐方法和装置
CN108133031A (zh) * 2017-12-29 2018-06-08 北京搜狐新媒体信息技术有限公司 一种过滤推荐视频候选结果的方法及装置
CN109828721A (zh) * 2019-01-23 2019-05-31 平安科技(深圳)有限公司 数据删除方法、装置、计算机设备及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113992923A (zh) * 2021-09-23 2022-01-28 北京达佳互联信息技术有限公司 直播榜单下发方法及装置

Also Published As

Publication number Publication date
CN111711860B (zh) 2022-09-30

Similar Documents

Publication Publication Date Title
EP3673376B1 (en) Log-structured storage systems
CN111159436B (zh) 一种推荐多媒体内容的方法、装置及计算设备
US20180260114A1 (en) Predictive models of file access patterns by application and file type
US8874700B2 (en) Optimizing storage of data files
US20170123676A1 (en) Reference Block Aggregating into a Reference Set for Deduplication in Memory Management
EP3695303B1 (en) Log-structured storage systems
US20200401557A1 (en) Metadata compaction in a distributed storage system
CN110309109B (zh) 数据监控方法、装置、计算机设备及存储介质
US20170123678A1 (en) Garbage Collection for Reference Sets in Flash Storage Systems
CN112734982A (zh) 无人车驾驶行为数据的存储方法和系统
CN111967850B (zh) 一种数据报送监测方法、装置及电子设备
US9910857B2 (en) Data management
CN111711860B (zh) 一种视频推荐滤重方法、装置、服务器及存储介质
CN105786539A (zh) 一种文件下载方法及装置
CN110413588B (zh) 分布式对象存储方法、装置、计算机设备和存储介质
CN112632008A (zh) 一种数据分片的传输方法、装置及计算机设备
CN104965835A (zh) 一种分布式文件系统的文件读写方法及装置
CN113742518A (zh) 存储和提供视频的方法、设备和计算机程序产品
US9549044B1 (en) Data processing
CN111158606A (zh) 存储方法、装置、计算机设备和存储介质
EP3293647B1 (en) Methods of storing essence data in media file systems
CN115348160A (zh) 回溯数据存储方法、装置及计算机设备
CN114490509A (zh) 跟踪改变数据捕获日志历史
CN114036121A (zh) 一种日志文件处理方法、装置、系统、设备及存储介质
CN111435342B (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