CN101399738A - 提供下载推荐服务的方法、结构化对等网络和其中的节点 - Google Patents
提供下载推荐服务的方法、结构化对等网络和其中的节点 Download PDFInfo
- Publication number
- CN101399738A CN101399738A CNA2007101515895A CN200710151589A CN101399738A CN 101399738 A CN101399738 A CN 101399738A CN A2007101515895 A CNA2007101515895 A CN A2007101515895A CN 200710151589 A CN200710151589 A CN 200710151589A CN 101399738 A CN101399738 A CN 101399738A
- Authority
- CN
- China
- Prior art keywords
- node
- download
- key assignments
- peer
- download history
- 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
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例公开了一种基于结构化对等网络的提供下载推荐服务方法和下载方法。利用位置敏感哈希函数,将对等网络中符合预定条件的每一个节点的下载记录哈希保存到对等网络中相应的节点上;对于当前节点,利用所述位置敏感哈希函数对该当前节点的下载记录进行哈希处理得到键值,根据负责索引所得键值中的至少一个键值的各个节点所保存的索引日志,获得当前节点的下载推荐列表;当前节点根据下载推荐列表进行下载。本发明实施例还公开了一种结构化的对等网络和三种结构化的对等网络中的节点。本发明实施例中的技术方案,能够在对等网络中根据用户的下载历史,向用户推荐其感兴趣的下载任务,从而为用户提供个性化的下载推荐服务。
Description
技术领域
本发明涉及结构化对等网络技术领域,尤指一种基于结构化对等网络的提供下载推荐服务的方法、下载方法、一种结构化对等网络以及三种结构化对等网络中的节点。
背景技术
结构化的对等网络相比于非结构化的对等网络具有扩展性高和查询速度快等优势。在结构化对等网络的应用中,存放和获取一个存储对象的基本操作是Put和Get。其中Put操作将一个拟存储的对象进行哈希处理,得到一个键值,再将对象交由负责索引该键值的节点存储。Get操作则将请求节点的请求对象哈希处理成键值,再由系统路由到负责索引该键值的节点上,找到所请求的存储对象并返回给请求节点。
下载推荐是下载网站常见的服务。目前,已经存在一些基于对等网络的下载推荐系统。例如:在BitTorrent系统中有采用服务器发布方式的热门推荐,通过用户下载数目的多少来统计最热门的资源;Vagaa程序2.6.4.0以后的版本提供了一种叫“同趣用户”的下载推荐功能,其基本原理是,将每个查询进行哈希处理,然后将提出这个查询的所有用户记录进行索引,这样,用户就可以看到提出相同查询的其他用户都共享了哪些文件;Kugoo也采用了类似的方法,对每首歌进行推荐,当用户下载一个文件的时候,给出对应于该文件的推荐列表。
在上述三种推进系统中,BitTorrent系统中的下载推荐方式是一种基于服务器/客户端的服务架构,与对等网络构架的系统相比具有单点故障、低扩展性等缺点。Vagaa和Kugoo中的下载推荐方式虽然是基于对等网络架构的,但是它们都是只针对一个查询做推荐,而不是综合考虑用户的下载历史进行推荐的,因此,不能充分地考虑了用户的喜好特性,为用户提供个性化的下载推荐。
发明内容
本发明实施例提供了一种基于结构化对等网络的提供下载推荐服务的方法,该方法能够根据用户的下载历史,为用户提供其感兴趣的下载推荐服务。
本发明实施例提供了一种基于结构化对等网络的下载方法,该方法能够使用户下载到其感兴趣的对象。
本发明实施例提供了一种结构化对等网络,该网络能够根据用户的下载历史,为用户提供其感兴趣的下载推荐服务。
本发明实施例提供了一种结构化对等网络中的节点,该节点能够根据用户的下载历史,为用户提供其感兴趣的下载推荐服务。
本发明实施例提供了一种结构化对等网络中的节点,该节点能够根据用户的下载历史,为用户提供其感兴趣的下载推荐服务。
本发明实施例还提供了一种结构化对等网络中的节点,该节点能够下载到用户感兴趣的对象。
为达到上述目的,本发明的技术方案具体是这样实现的:
本发明实施例公开了一种基于结构化对等网络的提供下载推荐服务的方法,该方法包括:
对于对等网络中符合预定条件的每一个节点,利用位置敏感哈希函数对该节点的下载记录进行哈希处理,得到N个键值,N为自然数,将该节点的标识以及该节点的下载记录保存到对等网络中负责索引所述N个键值中的至少一个键值的各个节点上;
对于对等网络中任一个当前节点,利用所述位置敏感哈希函数对该当前节点的下载记录进行哈希处理,得到N个键值,根据负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与当前节点的下载记录最为相似的K个节点,K为自然数,根据该K个节点的下载记录获得当前节点的下载推荐列表。
本发明实施例公开了一种基于结构化对等网络的下载方法,该方法包括:
结构化对等网络中符合预定条件的每一个节点,利用位置敏感哈希函数对自身的下载记录进行哈希处理,得到N个键值,N为自然数,并将自身标识和下载记录保存到对等网络中负责索引所述N个键值中的至少一个键值的各个节点上;
下载节点利用所述位置敏感哈希函数对自身的下载记录进行哈希处理,得到N个键值,根据负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与自身的下载记录最为接近的K个节点,K为自然数,根据该K个节点的下载记录获得下载推荐列表;
下载节点根据所述下载推荐列表进行下载。
本发明实施例公开了一种结构化的对等网络,
该对等网络中符合预定条件的每一个节点,用于利用位置敏感哈希函数将自身的下载记录进行哈希处理,得到N个键值,N为自然数,将自身的标识以及下载记录发送到该对等网络中负责索引所述N个键值中的至少一个键值的各个节点上进行保存;
该对等网络中的任一个节点,用于利用所述位置敏感哈希函数对自身的下载记录进行哈希处理,得到N个键值,查询对等网络中负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与自身下载记录最为相似的K个节点,K为自然数,根据该K个节点的下载记录获得自身的下载推荐列表。
本发明实施例公开了一种结构化对等网络中的节点,该节点包括:哈希模块和索引建立模块,其中,
哈希模块,用于利用位置敏感哈希函数将自身所在节点的下载记录进行哈希处理,得到N个键值,N为自然数,将N个键值发送到索引建立模块;
索引建立模块,用于接收哈希模块发送的N个键值,将自身所在节点的标识以及下载记录发送到对等网络中负责索引所述N个键值中的至少一个键值的各个节点上进行保存,以供对等网络中的其它节点查询。
本发明实施例还公开了一种结构化对等网络中的节点,该节点所在对等网络中符合预定条件的每一个节点,用于利用位置敏感哈希函数将自身的下载记录进行哈希处理,得到N个键值,N为自然数,将自身的标识以及下载记录发送到该对等网络中负责索引所述N个键值中的至少一个键值的各个节点上进行保存;
该节点包括:哈希模块和下载推荐模块,其中,
哈希模块,用于利用位置敏感哈希函数将自身所在节点的下载记录进行哈希处理,得到N个键值,N为自然数,将N个键值发送到下载推荐模块;
下载推荐模块,用于根据哈希模块发送的N个键值,查询对等网络中负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与自身所在节点的下载记录最为相似的K个节点,K为自然数,根据该K个节点的下载记录获得自身所在节点的下载推荐列表。
本发明实施例公开了一种结构化对等网络中的节点,该节点所在对等网络中符合预定条件的每一个节点,用于利用位置敏感哈希函数将自身的下载记录进行哈希处理,得到N个键值,N为自然数,将自身的标识以及下载记录发送到该对等网络中负责索引所述N个键值中的至少一个键值的各个节点上进行保存;该节点包括:列表获取模块和下载模块,其中,
列表获取模块,用于利用位置敏感哈希函数将自身所在节点的下载记录进行哈希处理,得到N个键值,N为自然数,查询对等网络中负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与自身所在节点的下载记录最为相似的K个节点,K为自然数,根据该K个节点的下载记录获得自身所在节点的下载推荐列表,将所获取的下载推荐列表发送给下载模块;
下载模块,用于根据所接收的下载推荐列表进行下载。
由上述技术方案可见,本发明实施例通过利用位置敏感哈希函数,将对等网络中符合预定条件的每一个节点的下载记录哈希保存到对等网络中相应的节点上,以完成整个网络中的索引日志的建立;并对于当前节点,利用所述位置敏感哈希函数对该当前节点的下载记录进行哈希处理得到键值,根据负责索引所得到的键值中的至少一个键值的各个节点所保存的索引日志,获得当前节点的下载推荐列表的技术方案,能够在对等网络中根据用户的下载历史,向用户推荐其感兴趣的下载任务,从而为用户提供个性化的下载推荐服务。
附图说明
图1是现有的一个具体的最小独立洗牌函数的哈希过程示意图;
图2是本发明实施例一种基于结构化对等网络的提供下载推荐服务的方法的流程图;
图3是本发明一种结构化对等网络中的节点的第一实施例的结构框图;
图4是本发明一种结构化对等网络中的节点的第二实施例的结构框图;
图5是本发明一种结构化对等网络中的节点的第三实施例的结构框图。
具体实施方式
由于本发明实施例中的技术方案是基于位置敏感哈希函数的,因此首先介绍位置敏感哈希函数的相关概念。
所谓位置敏感哈希函数是指能够保留对象距离特性的哈希函数,其具体定义是:一族(若干个)哈希函数H={h:S1→S2}被称为对相似度衡量N是(r1,r2,p1,p2)-敏感的,如果它对于任何q,p,p’∈S1满足:
a.如果p∈B(q,r1),那么Pr H[h(q)=h(p)]≥p1,
b.如果 那么Pr H[h(q)=h(p’)]≤p2,
其中,p1>p2,r1<r2。B(p;r)={p:N(q,p)≤r}是以q为中心的球体。
下面给出关于上述定义的解释:
1.上述定义中的对象距离,或者说对象的相似程度,是通过相似度衡量N来测算的。例如:在三维空间中,可以采用两点之间的欧式距离作为相似度衡量,距离远的两个点比距离近的两个点而言,具有较低的相似度。也可以采用两个向量之间的夹角作为相似度衡量,三维空间内的两个点分别和坐标原点相连,可以组成一个夹角,这个夹角越小,说明两个向量的相似度越高。不同的相似度衡量之间不具有任何相关性。例如:三维空间中,两个欧式距离相近的点可能对应向量之间的夹角却非常大。
2.位置敏感哈希可能是通过一个函数将一个对象映射到一个键值,也可能通过多个具有类似性质的函数将一个对象映射到多个键值上。因此,所谓位置敏感哈希函数是一族哈希函数。上述定义中,用h表示一个哈希函数,用H表示一族哈希函数,S1表示被哈希对象的定义域,S2表示哈希键值的定义域,也就是h函数的值域。
3.在上述定义中,(r1,r2,p1,p2)-敏感的概念是说,位置敏感的特性是在一定参数条件下得以满足的。例如(1,2,0.8,0.1)-敏感的位置敏感哈希函数需要满足:对于任何属于S1的三个点q,p,p’,
1)如果p和q的距离小于1,那么这一族哈希函数H中的所有函数h,将这两个点映射到相同的键值上的概率大于或等于0.8。
2)如果p’和q的距离大于2,那么这一族哈希函数H中的所有函数h,将这两个点映射到相同的键值上的概率小于或等于0.1。
根据类似的方法,可以定义类似(1,2,0.6,0.5)-敏感的位置敏感哈希函数等其它位置敏感哈希函数。不同参数的位置敏感哈希函数最终的具体形式也略有差别,尤其是在哈希函数构造本身的一些参数和该族哈希函数的具体数目上。
从上述对哈希函数的定义说明可以看出,如果两个对象的相似度越高,则经过位置敏感哈希函数哈希后所得到的键值相等的概率越高,反之,如果两个对象的相似度越低,则经过位置敏感哈希函数哈希后所得到的键值相等的概率越低,因此,位置敏感哈希函数能够保持对象的距离特性。
在本发明实施例中,主要利用位置敏感哈希函数能够保持对象的距离特性的性质,在基于结构化的对等网络中实现个性化的下载推荐,具体为:对于对等网络中符合预定条件的每一个节点,利用位置敏感哈希函数对该节点的下载记录进行哈希处理,得到N个键值,N为自然数,将该节点的标识以及该节点的下载记录保存到对等网络中负责索引所述N个键值中的至少一个键值的各个节点上;对于对等网络中任一个当前节点,利用所述位置敏感哈希函数对该当前节点的下载记录进行哈希处理,得到N个键值,根据负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与当前节点的下载记录最为相似的K个节点,K为自然数,根据该K个节点的下载记录获得当前节点的下载推荐列表。
通过上述方案可以根据当前用户的下载历史和与当前用户具有类似下载行为的其它用户的下载历史,向当前用户推荐其可能感兴趣的下载任务,从而为当前用户提供个性化的下载推荐服务。
为使本发明的目的、技术方案及优点更加清楚明白,下面以最小独立洗牌函数为例,对本发明进一步详细说明。
最小独立洗牌函数是位置敏感哈希函数,在相似度衡量M为集合的重合率的情况下,即相似度衡量M是两个集合的交集的元素个数与这两个集合的并集的元素个数之比的情况下,最小独立洗牌函数可以保证这两个集合的键值相等的概率为所述重合率。
本发明实施例中采用一族最小独立洗牌函数,该一族最小独立洗牌函数的输入参数为n位二进制整数的集合,每个最小独立洗牌函数都会将输入参数进行哈希处理得到一个整型的键值,因此会得到一族键值。每一个最小独立洗牌函数由m=log2n个种子整数构成,作用于0~2n-1范围内的整数,N个种子整数的位数依次为2m、2m-1、...、2,例如,当m=5时,5个种子整数的位数依次为32位、16位、8位、4位、2位,并且每个种子整数中的0和1的数目相等。下面先给出一个具体的最小独立洗牌函数的哈希过程。
图1是现有的一个具体的最小独立洗牌函数的哈希过程示意图。在图1中,输入参数集合为{01111011,11100010,10000100},一族位置敏感哈希函数包含两个最小独立洗牌函数,其种子整数分别为{10011100,0110,10}和{10000111,1001,10}。对于输入参数集合中的每一个整数,依次根据最小独立洗牌函数的种子整数进行重排,将与种子整数中的“1”对应的那些位提到高位,剩下的留在低位,得到新的整数,取所得整数中的最小数值作为键值。如图3所示,输入参数{01111011,11100010,10000100}经过两个最小独立洗牌函数哈希后得到的键值分别为34和95。
图2是本发明实施例一种基于结构化对等网络的提供下载推荐服务的方法的流程图。如图2所示,包括以下步骤:
步骤201,对于对等网络中符合预定条件的每一个节点,利用最小独立洗牌函数对该节点的下载记录进行哈希处理,得到N个键值,N为自然数,将该节点的标识以及该节点的下载记录保存到对等网络中负责索引所述N个键值中的至少一个键值的各个节点上。
显然,在步骤201中所使用的最小独立洗牌函数族包含N个最小独立洗牌函数。
步骤201的目的是在对等网络系统中建立用户下载记录的索引日志,以供后续的下载推荐时使用,因此需要进行特征选择,以过滤掉一些还不具有统计意义的项目,例如,有些用户,即对等网络中的某些节点的下载文件总数很少,还不足以反应出该用户的兴趣,因此这些用户的下载记录不应当被加入到系统中的索引日志中。但系统还需要记录这些用户的下载记录,以便将来这些用户的下载文件足够多时,将这些用户的下载记录加入到系统的索引日志中。
在本实施例中,采用阀值过滤方法,当一个用户的下载文件数目超过预定阀值时,即将该用户的下载记录采用步骤201中所述的哈希方法加入到系统的索引日志中。此时,步骤201中所述的符合预定条件的节点,即为下载文件个数超过预定阀值的节点。此外,还可以根据节点的在线时间或下载查询次数进行特征选择。也可以结合节点的下载文件数目、在线时间长度或下载查询次数中的任意两项或全部条件进行特征选择。
在步骤201中,由于不同的键值可能由同一个节点进行负责索引,因此负责索引所述N个键值中的至少一个键值的节点的个数可能是N个,也可能小于N。
在步骤201中,当一个符合预定条件的节点下载了新的对象,从而导致该节点的下载记录发生变化时,需要进一步根据该节点发生变化后的下载记录对系统中该用户的索引日志进行更新。
以下载记录为{Fa1,Fa2,...,Fap}的用户a为例对步骤201中索引日志建立过程进行说明:F为系统保存的与文件对应的整数标识,p表示该用户已经下载的文件数目,经过使用最小独立洗牌函数族对该用户的下载记录{Fa1,Fa2,...,Fap}进行哈希处理后,得到N个键值{Ka1,Ka2,...,KaN},因此,将用户a的标识和下载记录在负责索引这些键值的节点{Pa1,Pa2,...,PaN}上各保存一份。由于不同的键值可能由同一个节点负责索引,因此,在节点{Pa1,Pa2,...,PaN}中可能会有重复的节点,此时,所重复的节点上保存一次用户a的标识和下载记录即可。当用户a又下载了一个新的文件Fa(P+1)时,利用最小独立洗牌函数族对用户a的当前下载记录{Fa1,Fa2,...,Fap,Fa(P+1)}进行哈希处理,得到新的N个键值,如果该新得到的N个键值与前述得到的N个键值相同则无需对已经保存的用户a索引日志进行修改;如果新得到的键值中有部分发生改变,比如,新得到的N个键值是{KX1,Ka2,...,KaN},即第一个键值发生了改变,则删除负责索引键值Ka1的节点上的用户a的标识和下载记录,并在负责索引键值KX1的节点上保存用户a的标识和下载记录。
上述过程中,系统保存的与文件对应的整数标识F是现有技术,网络系统在保存文件时,一般都会将一个文件哈希成唯一的整数标识,这里不再详述。
步骤202,对于对等网络中任一个当前节点,利用所述位置敏感哈希函数对该当前节点的下载记录进行哈希处理,得到N个键值,根据负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与当前节点的下载记录最为相似的K个节点,K为自然数,根据该K个节点的下载记录获得当前节点的下载推荐列表。
以下载记录为{Fb1,Fb2,...,Fbq}的用户b,即节点b为例对步骤202下载推荐过程进行说明,q为该用户所下载的文件数目:
首先,使用在步骤201中所使用的最小独立洗牌函数族对该用户的下载记录{Fb1,Fb2,...,Fbq}进行哈希处理,得到N个键值{Kb1,Kb2,...,KbN},从负责索引键值{Kb1,Kb2,...,KbN}的各个节点上获取其保存的节点标识和对应的节点下载记录,取在所述各个节点所保存的节点标识中出现次数最多的K个节点标识,则与这K个节点标识对应的K个节点即为与用户b的下载行为最为相似的K个用户。例如,当N=3,负责索引Kb1的节点上保存的节点标识列表为:a、b、c、d,负责索引Kb2的节点上保存的节点标识列表为:a、b、c、e、g,负责索引Kb3的节点所保存的节点标识列表为:a、b、f、e、h时,由于在三节点标识列表中节点标识a出现的次数最多,共3次,因此用户a的下载行为与用户b的下载行为最为相似,如果K取3,则按照在各个节点标识列表中出现的次数依次取节点a、c、e即可。
其次,从负责索引键值{Kb1,Kb2,...,KbN}中的至少一个键值的各个节点上获取与用户b的下载记录最为相似的K个节点的下载记录,根据与用户b的下载记录的相似度为这K个节点打分,比如,可以采用重合率,即两个集合的交集的元素个数与这两个集合的并集的元素个数之比进行打分;从这K个下载记录中去除用户b已经下载的文件,对剩下的文件根据各个节点的得分进行加权求和,以得分次序进行排序即得到下载推荐列表。例如,与用户b的下载行为最为相似的3个节点分别为a、c、e,根据与用户b的下载记录的相似度进行打分后,节点a得0.95分,节点c得0.9分,节点e得0.6分,从a、c、e的下载记录中去除用户b已经下载的文件后,剩余的下载文件分别为{F1,F2,F3}、{F1,F3,F4}和{F3,F5},则经过加权求和后文件F1得1.85分、文件F2得0.95分、文件F3的2.45分、文件F4得0.9分、文件F5得0.6分,得分越高的文件表明系统认为用户b越有可能下载,因此经过排序后得到下载推荐列表:F3(2.45),F1(1.85),F2(0.95),F4(0.9),F5(0.6)。
在图2所示的提供下载推荐服务方法流程中,位置敏感哈希函数是最小独立洗牌函数,当然也可以根据实际情况使用其它的位置敏感哈希函数,其基本流程与图2所述的流程相同,这里不再复述。
基于图2中的提供下载推荐服务方法获得下载推荐列表后,下载节点即可根据该下载推荐列表进行下载。
基于上述基于结构化对等网络的提供下载推荐服务的方法的技术方案,接下来给出本发明实施例的结构化对等网络和结构化对等网络中的节点。
本发明实施例中的一种结构化的对等网络,由多个对等节点组成,其中:
该对等网络中符合预定条件的每一个节点,用于利用位置敏感哈希函数将自身的下载记录进行哈希处理,得到N个键值,N为自然数,将自身的标识以及下载记录发送到该对等网络中负责索引所述N个键值中的至少一个键值的各个节点上进行保存;
该对等网络中的任一个节点,用于利用所述位置敏感哈希函数对自身的下载记录进行哈希处理,得到N个键值,查询对等网络中负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与自身下载记录最为相似的K个节点,K为自然数,根据该K个节点的下载记录获得自身的下载推荐列表。
并且,该对等网络中的符合预定条件的每一个节点,进一步用于在下载新的文件时,根据自身当前的下载记录更新对等网络中所保存的其自身的节点标识和下载记录。
图3是本发明一种结构化对等网络中的节点的第一实施例的结构框图。该节点是结构化对等网络中的一个节点,如图3所示,该节点包括:哈希模块301和索引建立模块302。
在图3中,哈希模块301,用于利用位置敏感哈希函数将自身所在节点的下载记录进行哈希处理,得到N个键值,N为自然数,将N个键值发送到索引建立模块302。索引建立模块302,用于接收哈希模块301发送的N个键值,将自身所在节点的标识以及下载记录发送到对等网络中负责索引所述N个键值中的至少一个键值的各个节点上进行保存,以供对等网络中的其它节点查询。
图3所示的节点还可以进一步包括下载推荐模块303,在图3中用虚线框图表示。此时,哈希模块301,进一步用于将N个键值发送到下载推荐模块303。下载推荐模块303用于根据哈希模块301发送的N个键值,查询对等网络中负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与自身所在节点的下载记录最为相似的K个节点,K为自然数,根据该K个节点的下载记录获得自身所在节点的下载推荐列表。
图4是本发明一种结构化对等网络中的节点的第二实施例的结构框图。该节点是结构化对等网络中的一个节点,且该节点所在对等网络中符合预定条件的每一个节点,用于利用位置敏感哈希函数将自身的下载记录进行哈希处理,得到N个键值,N为自然数,将自身的标识以及下载记录发送到该对等网络中负责索引所述N个键值中的至少一个键值的各个节点上进行保存。如图4所示,该节点包括:哈希模块401和下载推荐模块402。
在图4中,哈希模块401,用于利用位置敏感哈希函数将自身所在节点的下载记录进行哈希处理,得到N个键值,N为自然数,将N个键值发送到下载推荐模块402。下载推荐模块402,用于根据哈希模块401发送的N个键值,查询对等网络中负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与自身所在节点的下载记录最为相似的K个节点,K为自然数,根据该K个节点的下载记录获得自身所在节点的下载推荐列表。
图5是本发明一种结构化对等网络中的节点的第三实施例的结构框图。该节点是结构化对等网络中的一个节点,如图5所示,该节点包括:列表获取模块501和下载模块502。
图5所示的节点所在对等网络中符合预定条件的每一个节点,用于利用位置敏感哈希函数将自身的下载记录进行哈希处理,得到N个键值,N为自然数,将自身的标识以及下载记录发送到该对等网络中负责索引所述N个键值中的至少一个键值的各个节点上进行保存。
在图5中,列表获取模块501,用于利用位置敏感哈希函数将自身所在节点的下载记录进行哈希处理,得到N个键值,N为自然数,查询对等网络中负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与自身所在节点的下载记录最为相似的K个节点,K为自然数,根据该K个节点的下载记录获得自身所在节点的下载推荐列表,将所获取的下载推荐列表发送给下载模块502。下载模块502,用于根据所接收的下载推荐列表进行下载。
图5中的列表获取模块501包括:哈希模块503和下载推荐模块504,其中,哈希模块503,用于利用位置敏感哈希函数将自身所在节点的下载记录进行哈希处理,得到N个键值,N为自然数,将N个键值发送到下载推荐模块504;下载推荐模块504,用于根据哈希模块503发送的N个键值,查询对等网络中负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与自身所在节点的下载记录最为相似的K个节点,K为自然数,根据该K个节点的下载记录获得自身所在节点的下载推荐列表,将所获取的下载推荐列表发送给下载模块502。
综上所述,本发明实施例通过利用位置敏感哈希函数,将对等网络中符合预定条件的每一个节点的下载记录哈希保存到对等网络中相应的节点上,以完成整个网络中的索引日志的建立;并对于当前节点,利用所述位置敏感哈希函数对该当前节点的下载记录进行哈希处理得到键值,根据负责索引所得键值中的至少一个键值的各个节点所保存的索引日志,获得当前节点的下载推荐列表的技术方案,能够在对等网络中根据用户的下载历史,向用户推荐其感兴趣的下载任务,从而为用户提供个性化的下载推荐服务。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (15)
1、一种基于结构化对等网络的提供下载推荐服务的方法,其特征在于,该方法包括:
对于对等网络中符合预定条件的每一个节点,利用位置敏感哈希函数对该节点的下载记录进行哈希处理,得到N个键值,N为自然数,将该节点的标识以及该节点的下载记录保存到对等网络中负责索引所述N个键值中的至少一个键值的各个节点上;
对于对等网络中任一个节点,利用所述位置敏感哈希函数对该节点的下载记录进行哈希处理,得到N个键值,根据负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与当前节点的下载记录最为相似的K个节点,K为自然数,根据该K个节点的下载记录获得当前节点的下载推荐列表。
2、如权利要求1所述的方法,其特征在于,当所述符合预定条件的任一个节点下载新的对象时或之后,该方法进一步包括:根据该节点当前的下载记录更新对等网络中所保存的该节点的标识以及该节点标识的下载记录。
3、如权利要求1所述的方法,其特征在于,所述符合预定条件的节点包括:所下载文件的数目超过预定阀值的节点,和/或,在线时间超过预定阀值的节点,和/或,下载查询次数超过预定阀值的节点。
4、如权利要求1所述的方法,其特征在于,所述根据负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与当前节点的下载行为最为相似的K个节点包括:将负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识中,出现次数最多的K个节点标识所对应的K个节点,确定为与当前用户的下载行为最为相似的K个节点。
5、如权利要求1或4所述的方法,其特征在于,所述根据K个节点的下载记录获得当前节点的下载推荐列表包括:
对于所述K个节点中的每一个节点,根据该节点的下载记录与当前节点的下载记录的相似度为该节点打分;
从所述K个节点的下载记录中去除当前节点已经下载的文件,并对K个节点的下载记录中剩下的文件,根据K个节点的得分进行加权求和打分;
对所述剩下的文件根据其得分进行排序,得到当前节点的下载推荐列表。
6、如权利要求5所述的方法,其特征在于,所述该节点的下载记录与当前节点的下载记录的相似度是,这两个节点的下载记录的重合率。
7、如权利要求1-6中任一项所述的方法,其特征在于,所述位置敏感哈希函数是最小独立洗牌函数。
8、一种基于结构化对等网络的下载方法,其特征在于,该方法包括:
结构化对等网络中符合预定条件的每一个节点,利用位置敏感哈希函数对自身的下载记录进行哈希处理,得到N个键值,N为自然数,并将自身标识和下载记录保存到对等网络中负责索引所述N个键值中的至少一个键值的各个节点上;
下载节点利用所述位置敏感哈希函数对自身的下载记录进行哈希处理,得到N个键值,根据负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与自身的下载记录最为接近的K个节点,K为自然数,根据该K个节点的下载记录获得下载推荐列表;
下载节点根据所述下载推荐列表进行下载。
9、一种结构化的对等网络,其特征在于,
该对等网络中符合预定条件的每一个节点,用于利用位置敏感哈希函数将自身的下载记录进行哈希处理,得到N个键值,N为自然数,将自身的标识以及下载记录发送到该对等网络中负责索引所述N个键值中的至少一个键值的各个节点上进行保存;
该对等网络中的任一个节点,用于利用所述位置敏感哈希函数对自身的下载记录进行哈希处理,得到N个键值,查询对等网络中负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与自身下载记录最为相似的K个节点,K为自然数,根据该K个节点的下载记录获得自身的下载推荐列表。
10、如权利要求9所述的对等网络,其特征在于,
该对等网络中的符合预定条件的每一个节点,进一步用于在下载新的文件时,根据自身当前的下载记录更新对等网络中所保存的其自身的节点标识和下载记录。
11、一种结构化对等网络中的节点,其特征在于,该节点包括:哈希模块和索引建立模块,其中,
哈希模块,用于利用位置敏感哈希函数将自身所在节点的下载记录进行哈希处理,得到N个键值,N为自然数,将N个键值发送到索引建立模块;
索引建立模块,用于接收哈希模块发送的N个键值,将自身所在节点的标识以及下载记录发送到对等网络中负责索引所述N个键值中的至少一个键值的各个节点上进行保存,以供对等网络中的其它节点查询。
12、如权利要求11所述的节点,其特征在于,该节点进一步包括下载推荐模块,
所述哈希模块,进一步用于将N个键值发送到下载推荐模块;
下载推荐模块,用于根据哈希模块发送的N个键值,查询对等网络中负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与自身所在节点的下载记录最为相似的K个节点,K为自然数,根据该K个节点的下载记录获得自身所在节点的下载推荐列表。
13、一种结构化对等网络中的节点,其特征在于,
该节点所在对等网络中符合预定条件的每一个节点,用于利用位置敏感哈希函数将自身的下载记录进行哈希处理,得到N个键值,N为自然数,将自身的标识以及下载记录发送到该对等网络中负责索引所述N个键值中的至少一个键值的各个节点上进行保存;
该节点包括:哈希模块和下载推荐模块,其中,
哈希模块,用于利用位置敏感哈希函数将自身所在节点的下载记录进行哈希处理,得到N个键值,N为自然数,将N个键值发送到下载推荐模块;
下载推荐模块,用于根据哈希模块发送的N个键值,查询对等网络中负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与自身所在节点的下载记录最为相似的K个节点,K为自然数,根据该K个节点的下载记录获得自身所在节点的下载推荐列表。
14、一种结构化对等网络中的节点,其特征在于,
该节点所在对等网络中符合预定条件的每一个节点,用于利用位置敏感哈希函数将自身的下载记录进行哈希处理,得到N个键值,N为自然数,将自身的标识以及下载记录发送到该对等网络中负责索引所述N个键值中的至少一个键值的各个节点上进行保存;
该节点包括:列表获取模块和下载模块,其中,
列表获取模块,用于利用位置敏感哈希函数将自身所在节点的下载记录进行哈希处理,得到N个键值,N为自然数,查询对等网络中负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与自身所在节点的下载记录最为相似的K个节点,K为自然数,根据该K个节点的下载记录获得自身所在节点的下载推荐列表,将所获取的下载推荐列表发送给下载模块;
下载模块,用于根据所接收的下载推荐列表进行下载。
15、如权利要求14所述的节点,其特征在于,所述列表获取模块包括:哈希模块和下载推荐模块,其中,
哈希模块,用于利用位置敏感哈希函数将自身所在节点的下载记录进行哈希处理,得到N个键值,N为自然数,将N个键值发送到下载推荐模块;
下载推荐模块,用于根据哈希模块发送的N个键值,查询对等网络中负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与自身所在节点的下载记录最为相似的K个节点,K为自然数,根据该K个节点的下载记录获得自身所在节点的下载推荐列表,将所获取的下载推荐列表发送给下载模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101515895A CN101399738B (zh) | 2007-09-28 | 2007-09-28 | 提供下载推荐服务的方法、结构化对等网络和其中的节点 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101515895A CN101399738B (zh) | 2007-09-28 | 2007-09-28 | 提供下载推荐服务的方法、结构化对等网络和其中的节点 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101399738A true CN101399738A (zh) | 2009-04-01 |
CN101399738B CN101399738B (zh) | 2011-04-20 |
Family
ID=40518009
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101515895A Expired - Fee Related CN101399738B (zh) | 2007-09-28 | 2007-09-28 | 提供下载推荐服务的方法、结构化对等网络和其中的节点 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101399738B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102263777A (zh) * | 2010-05-28 | 2011-11-30 | 腾讯科技(深圳)有限公司 | 一种关联下载提示方法及装置 |
CN102663073A (zh) * | 2012-03-31 | 2012-09-12 | 奇智软件(北京)有限公司 | 基于被下载文件进行推荐的方法及系统 |
CN103581261A (zh) * | 2012-08-03 | 2014-02-12 | 盛乐信息技术(上海)有限公司 | P2p数据发布、分享和统计方法及系统 |
CN104426946A (zh) * | 2013-08-27 | 2015-03-18 | 腾讯科技(深圳)有限公司 | 批量下载数据处理方法和装置 |
CN105989078A (zh) * | 2015-02-11 | 2016-10-05 | 烟台中科网络技术研究所 | 一种结构化对等网络构建索引的方法、检索方法、装置及系统 |
CN107463698A (zh) * | 2017-08-15 | 2017-12-12 | 北京百度网讯科技有限公司 | 基于人工智能推送信息的方法和装置 |
CN110298194A (zh) * | 2019-06-11 | 2019-10-01 | 阿里巴巴集团控股有限公司 | 基于区块链的文件处理方法、装置、设备及存储介质 |
US11122110B2 (en) | 2019-06-11 | 2021-09-14 | Advanced New Technologies Co., Ltd. | Blockchain-based file processing method, apparatus, and device, and storage medium |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100365997C (zh) * | 2005-08-26 | 2008-01-30 | 南京邮电大学 | 用于在对等网络中采用分布式哈希表的资源定位方法 |
CN100496004C (zh) * | 2006-09-05 | 2009-06-03 | 华为技术有限公司 | 结构化对等网络系统及其负载查询、转移及资源查找方法 |
-
2007
- 2007-09-28 CN CN2007101515895A patent/CN101399738B/zh not_active Expired - Fee Related
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102263777A (zh) * | 2010-05-28 | 2011-11-30 | 腾讯科技(深圳)有限公司 | 一种关联下载提示方法及装置 |
CN102663073A (zh) * | 2012-03-31 | 2012-09-12 | 奇智软件(北京)有限公司 | 基于被下载文件进行推荐的方法及系统 |
CN102663073B (zh) * | 2012-03-31 | 2014-08-20 | 北京奇虎科技有限公司 | 基于被下载文件进行推荐的方法及系统 |
CN103581261B (zh) * | 2012-08-03 | 2019-02-22 | 上海果壳电子有限公司 | P2p数据发布、分享和统计方法及系统 |
CN103581261A (zh) * | 2012-08-03 | 2014-02-12 | 盛乐信息技术(上海)有限公司 | P2p数据发布、分享和统计方法及系统 |
CN104426946A (zh) * | 2013-08-27 | 2015-03-18 | 腾讯科技(深圳)有限公司 | 批量下载数据处理方法和装置 |
CN104426946B (zh) * | 2013-08-27 | 2019-02-22 | 腾讯科技(深圳)有限公司 | 批量下载数据处理方法和装置 |
CN105989078B (zh) * | 2015-02-11 | 2019-05-07 | 烟台中科网络技术研究所 | 一种结构化对等网络构建索引的方法、检索方法、装置及系统 |
CN105989078A (zh) * | 2015-02-11 | 2016-10-05 | 烟台中科网络技术研究所 | 一种结构化对等网络构建索引的方法、检索方法、装置及系统 |
CN107463698A (zh) * | 2017-08-15 | 2017-12-12 | 北京百度网讯科技有限公司 | 基于人工智能推送信息的方法和装置 |
CN110298194A (zh) * | 2019-06-11 | 2019-10-01 | 阿里巴巴集团控股有限公司 | 基于区块链的文件处理方法、装置、设备及存储介质 |
US11122110B2 (en) | 2019-06-11 | 2021-09-14 | Advanced New Technologies Co., Ltd. | Blockchain-based file processing method, apparatus, and device, and storage medium |
CN110298194B (zh) * | 2019-06-11 | 2024-02-02 | 创新先进技术有限公司 | 基于区块链的文件处理方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN101399738B (zh) | 2011-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101399738B (zh) | 提供下载推荐服务的方法、结构化对等网络和其中的节点 | |
CN107247773B (zh) | 一种基于区块链的在分布式数据库中进行交易查询的方法 | |
CN102737057B (zh) | 一种商品类目信息的确定方法及装置 | |
CN103345521B (zh) | 一种在哈希表数据库中处理键值的方法和装置 | |
US8126997B2 (en) | Hot data management method based on hit counter | |
CN102750375B (zh) | 一种基于随机游走的服务和标签推荐方法 | |
CN108932236A (zh) | 一种文件管理方法、过期文件删除方法及装置 | |
CN102799671B (zh) | 基于PageRank算法的网络个性化推荐方法 | |
CN111177080A (zh) | 一种基于区块链和ipfs的知识图谱存储与验证方法 | |
CN101341464A (zh) | 对结构化数据的搜索 | |
CN105120004A (zh) | 信息的推送方法及装置 | |
Qin et al. | Applying private information retrieval to lightweight bitcoin clients | |
EP3442160A1 (en) | Pruning of authentication trees | |
CN106844500A (zh) | 一种k‑core‑truss社区模型及分解、搜索算法 | |
KR20190085823A (ko) | 개인 정보 보호가 가능한 개인화된 질의응답 시스템, 클라우드 서버 및 이의 공통 신경망 모델 제공 방법 | |
EP3739466A1 (en) | Information management device, information management method, and information management program | |
CN113239249A (zh) | 一种对象关联识别方法、装置和存储介质 | |
US20210109925A1 (en) | Information management device, information management method, and information management program | |
CN110019980B (zh) | 索引处理方法、装置、存储介质和计算机设备 | |
CN106780062B (zh) | 基于社交网络和大数据分析的用户群组更新方法及系统 | |
CN102378409B (zh) | 一种物联网中的层次式Chord分组网络及其组织方法 | |
CN103853833A (zh) | 一种信息处理方法及数据处理设备 | |
CN106131115A (zh) | 基于云端通讯录的通讯录数据自动发布和更新系统 | |
CN113094573A (zh) | 多关键词排序可搜索加密方法、装置、设备及存储介质 | |
WO2023013446A1 (ja) | 検証方法、サーバ、及び、プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110420 Termination date: 20190928 |
|
CF01 | Termination of patent right due to non-payment of annual fee |