提供下载推荐服务的方法、结构化对等网络和其中的节点的制作方法

文档序号:7661268阅读:170来源:国知局
专利名称:提供下载推荐服务的方法、结构化对等网络和其中的节点的制作方法
技术领域
本发明涉及结构化对等网络技术领域,尤指一种基于结构化对等网络的 提供下载推荐服务的方法、下载方法、 一种结构化对等网络以及三种结构化 对等网络中的节点。
背景技术
结构化的对等网络相比于非结构化的对等网络具有扩展性高和查询速 度快等优势。在结构化对等网络的应用中,存放和获取一个存储对象的基本操作是Put和Get。其中Put操作将一个拟存储的对象进行哈希处理,得到 一个键值,再将对象交由负责索引该键值的节点存储。Get操作则将请求节 点的请求对象哈希处理成键值,再由系统路由到负责索引该键值的节点上, 找到所请求的存储对象并返回给请求节点。下载推荐是下载网站常见的服务。目前,已经存在一些基于对等网络的 下载推荐系统。例如在BitTorrent系统中有采用服务器发布方式的热门推 荐,通过用户下载it目的多少来统计最热门的资源;Vagaa程序2.6.4.0以后 的版本提供了一种叫"同趣用户"的下载推荐功能,其基本原理是,将每个 查询进行哈希处理,然后将提出这个查询的所有用户记录进行索引,这样, 用户就可以看到提出相同查询的其他用户都共享了哪些文件;Kugoo也采用 了类似的方法,对每首歌进行推荐,当用户下载一个文件的时候,给出对应 于该文件的推荐列表。在上述三种推进系统中,BitTorrent系统中的下载推荐方式是一种基于 服务器/客户端的服务架构,与对等网络构架的系统相比具有单点故障、低 扩展性等缺点。Vagaa和Kugoo中的下载推荐方式虽然是基于对等网络架构
的,但是它们都是只针对一个查询做推荐,而不是综合考虑用户的下载历史 进行推荐的,因此,不能充分地考虑了用户的喜好特性,为用户提供个性化 的下载推荐。发明内容本发明实施例提供了一种基于结构化对等网络的提供下载推荐服务的 方法,该方法能够根据用户的下载历史,为用户提供其感兴趣的下载推荐服 务。本发明实施例提供了一种基于结构化对等网络的下载方法,该方法能够 使用户下载到其感兴趣的对象。本发明实施例提供了 一种结构化对等网络,该网络能够根据用户的下载 历史,为用户提供其感兴趣的下载推荐服务。本发明实施例提供了 一种结构化对等网络中的节点,该节点能够根据用 户的下载历史,为用户提供其感兴趣的下载推荐服务。本发明实施例提供了 一种结构化对等网络中的节点,该节点能够根据用 户的下载历史,为用户提供其感兴趣的下载推荐服务。本发明实施例还提供了 一种结构化对等网络中的节点,该节点能够下载 到用户感兴趣的对象。为达到上述目的,本发明的技术方案具体是这样实现的本发明实施例公开了一种基于结构化对等网络的提供下载推荐服务的 方法,该方法包4舌对于对等网络中符合预定条件的每一个节点,利用位置敏感哈希函数对 该节点的下载记录进行哈希处理,得到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:Sl—S2)被称为对相似度衡量N是 (rl,r2,pl, p2)-敏感的,如果它对于任何q, p,p,e Sl满足a. 如果peB(q, rl),那么Pr H[h(q)=h(p)]^pl,b. 如果p,gB(q, r2),那么Pr H[h(q)=h(p,)]^p2,其中,pl>p2, rKr2。 B(p; r)={p: N(q, p)^r〉是以q为中心的球体。
下面给出关于上述定义的解释1. 上述定义中的对象距离,或者说对象的相似程度,是通过相似度衡 量N来测算的。例如在三维空间中,可以釆用两点之间的欧式距离作为 相似度衡量,距离远的两个点比距离近的两个点而言,具有较低的相似度。 也可以采用两个向量之间的夹角作为相似度衡量,三维空间内的两个点分别 和坐标原点相连,可以组成一个夹角,这个夹角越小,说明两个向量的相似 度越高。不同的相似度衡量之间不具有任何相关性。例如三维空间中,两 个欧式距离相近的点可能对应向量之间的夹角却非常大。2. 位置敏感哈希可能是通过一个函数将一个对象映射到一个键值,也 可能通过多个具有类似性质的函数将一个对象映射到多个键值上。因此,所 谓位置敏感哈希函数是一族哈希函数。上述定义中,用h表示一个哈希函数, 用H表示一族哈希函数,Sl表示被哈希对象的定义域,S2表示哈希键值的 定义域,也就是h函数的值域。3. 在上述定义中,(rl, r2, pl, p2)-敏感的概念是说,位置敏感的 特性是在一定参数条件下得以满足的。例如(l, 2, 0.8, O.l)-敏感的位置敏 感哈希函数需要满足对于任何属于Sl的三个点q,p, p,,1 )如果p和q的距离小于1,那么这一族哈希函数H中的所有函数h, 将这两个点映射到相同的键值上的概率大于或等于0.8。2)如果p,和q的距离大于2,那么这一族哈希函数H中的所有函数h, 将这两个点映射到相同的键值上的概率小于或等于0.1 。根据类似的方法,可以定义类似(l, 2, 0.6, 0.5)-敏感的位置敏感哈希 函数等其它位置敏感哈希函数。不同参数的位置敏感哈希函数最终的具体形 式也略有差别,尤其是在哈希函数构造本身的一些参数和该族哈希函数的具 体数目上。从上述对哈希函数的定义说明可以看出,如果两个对象的相似度越高, 则经过位置敏感哈希函数哈希后所得到的键值相等的概率越高,反之,如果 两个对象的相似度越低,则经过位置敏感哈希函数哈希后所得到的键值相等 的概率越低,因此,位置敏感哈希函数能够保持对象的距离特性。在本发明实施例中,主要利用位置敏感哈希函数能够保持对象的距离特性的性质,在基于结构化的对等网络中实现个性化的下载推荐,具体为对 于对等网络中符合预定条件的每一个节点,利用位置敏感哈希函数对该节点 的下载记录进行哈希处理,得到N个键值,N为自然数,将该节点的标识以 及该节点的下载记录保存到对等网络中负责索引所述N个键值中的至少一 个键值的各个节点上;对于对等网络中任一个当前节点,利用所述位置敏感 哈希函数对该当前节点的下载记录进行哈希处理,得到N个键值,根据负 责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节 点下载记录,确定与当前节点的下载记录最为相似的K个节点,K为自然数, 根据该K个节点的下载记录获得当前节点的下载推荐列表。通过上述方案可以根据当前用户的下载历史和与当前用户具有类似下 载行为的其它用户的下载历史,向当前用户推荐其可能感兴趣的下载任务, 从而为当前用户提供个性化的下载推荐服务。为使本发明的目的、技术方案及优点更加清楚明白,下面以最小独立洗 牌函数为例,对本发明进一步详细说明。最小独立洗牌函数是位置敏感哈希函数,在相似度衡量M为集合的重 合率的情况下,即相似度衡量M是两个集合的交集的元素个数与这两个集 合的并集的元素个数之比的情况下,最小独立洗牌函数可以保证这两个集合 的键值相等的概率为所述重合率。本发明实施例中采用一族最小独立洗牌函数,该一族最小独立洗牌函数 的输入参数为n位二进制整数的集合,每个最小独立洗牌函数都会将输入参 数进行哈希处理得到一个整型的键值,因此会得到一族键值。每一个最小独 立洗牌函数由m-log2n个种子整数构成,作用于0~ 2n-l范围内的整数,N个种子整数的位数依次为2"1、 2m"..... 2,例如,当m-5时,5个种子整数的位数依次为32位、16位、8位、4位、2位,并且每个种子整lt中的0
和1的数目相等。下面先给出一个具体的最小独立洗牌函数的哈希过程。图1是现有的一个具体的最小独立洗牌函数的哈希过程示意图。在图1中,输入参数集合为{01111011, 11100010, 10000100}, 一族位置敏感哈希 函数包含两个最小独立洗牌函数,其种子整数分别为{10011100, 0110, 10} 和(10000U1, 1001, 10}。对于输入参数集合中的每一个整数,依次根据最小独立洗牌函数的种子整数进行重排,将与种子整数中的"r对应的那些 位提到高位,剩下的留在低位,得到新的整数,取所得整数中的最小数值作为键值。如图3所示,输入参数{01111011, 11100010, 10000100}经过两个 最小独立洗牌函数哈希后得到的键值分别为34和95。图2是本发明实施例一种基于结构化对等网络的提供下载推荐服务的 方法的流程图。如图2所示,包括以下步骤步骤201,对于对等网络中符合预定条件的每一个节点,利用最小独立 洗牌函数对该节点的下载记录进行哈希处理,得到N个键值,N为自然数, 将该节点的标识以及该节点的下载记录保存到对等网络中负责索引所述N 个键值中的至少 一个键值的各个节点上。显然,在步骤201中所使用的最小独立洗牌函数族包含N个最小独立 洗牌函数。步骤201的目的是在对等网络系统中建立用户下载记录的索引日志,以 供后续的下载推荐时使用,因此需要进行特征选择,以过滤掉一些还不具有 统计意义的项目,例如,有些用户,即对等网络中的某些节点的下载文件总 数很少,还不足以反应出该用户的兴趣,因此这些用户的下载记录不应当被 加入到系统中的索引日志中。但系统还需要记录这些用户的下载记录,以便 将来这些用户的下载文件足够多时,将这些用户的下载记录加入到系统的索 引曰志中。在本实施例中,采用阀值过滤方法,当一个用户的下载文件数目超过预 定阀值时,即将该用户的下载记录采用步骤201中所述的哈希方法加入到系 统的索引日志中。此时,步骤201中所述的符合预定条件的节点,即为下载
文件个数超过预定阀值的节点。此外,还可以根据节点的在线时间或下载查 询次数进行特征选择。也可以结合节点的下载文件数目、在线时间长度或下 栽查询次数中的任意两项或全部条件进行特征选择。在步骤201中,由于不同的键值可能由同一个节点进行负责索引,因此 负责索引所述N个键值中的至少一个键值的节点的个数可能是N个,也可 能小于N。在步骤201中,当一个符合预定条件的节点下载了新的对象,从而导致 该节点的下载记录发生变化时,需要进一步根据该节点发生变化后的下载记 录对系统中该用户的索引日志进行更新。以下载记录为(F^ , Fa2 , ..., FajJ的用户a为例对步骤201中索引曰 志建立过程进行说明F为系统保存的与文件对应的整数标识,p表示该用 户已经下载的文件数目,经过使用最小独立洗牌函数族对该用户的下载记录 {Fal , Fa2 ,…,Fap)进行哈希处理后,得到N个键值(K^, Ka2,…,KaN}, 因此,将用户a的标识和下载记录在负责索引这些键值的节点(P^, Pa2,...,PaN)上各保存一份。由于不同的键值可能由同一个节点负责索引,因此,在 节点(Pa,, Pa2, ..., PaN〉中可能会有重复的节点,此时,所重复的节点上保存一次用户a的标识和下载记录即可。当用户a又下载了一个新的文件Fa(p+,) 时,利用最小独立洗牌函数族对用户a的当前下载记录(F^ , Fa2 , ..., Fap, Fa(p+D)进行哈希处理,得到新的N个键值,如果该新得到的N个键值与前 述得到的N个键值相同则无需对已经保存的用户a索引日志进行修改;如果 新得到的键值中有部分发生改变,比如,新得到的N个键值是(K幻,Ka2,..., KaN},即第一个键值发生了改变,则删除负责索引键值K^的节点上的用户 a的标识和下载记录,并在负责索引键值Koo的节点上保存用户a的标识和 下载记录。上述过程中,系统保存的与文件对应的整数标识F是现有技术,网络系 统在保存文件时, 一般都会将一个文件哈希成唯一的整数标识,这里不再详 述。
步骤202,对于对等网络中任一个当前节点,利用所述位置敏感哈希函 数对该当前节点的下载记录进行哈希处理,得到N个键值,根据负责索引 所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载 记录,确定与当前节点的下载记录最为相似的K个节点,K为自然数,根据 该K个节点的下载记录获得当前节点的下载推荐列表。以下载记录为(F^ , Fb2 ,…,Fbq)的用户b,即节点b为例对步骤202 下载推荐过程进行说明,q为该用户所下载的文件数目首先,使用在步骤201中所使用的最小独立洗牌函数族对该用户的下载 记录(Fw , Fb2 , ..., FbJ进行哈希处理,得到N个键值(Kw, Kb2, KbN },从负责索引键值(Kw, Kb2,…,KbN }的各个节点上获取其保存的 节点标识和对应的节点下载记录,取在所述各个节点所保存的节点标识中出 现次数最多的K个节点标识,则与这K个节点标识对应的K个节点即为与 用户b的下载行为最为相似的K个用户。例如,当N-3,负责索引Kw的 节点上保存的节点标识列表为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即 可。其次,从负责索引键值(Kw, 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已经下载的文件后, 剩余的下载文件分别为(Fi , F2 , F3}、 {Ft , F3 , F^和(F3 , F5},则经 过加权求和后文件F!得1.85分、文件F2得0.95分、文件F3的2.45分、 文件F4得0.9分、文件Fs得0.6分,得分越高的文件表明系统认为用户b 越有可能下载,因此经过排序后得到下载推荐列表F3(2.45), F!(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。综上所述,本发明实施例通过利用位置敏感哈希函数,将对等网络中符 合预定条件的每一个节点的下载记录哈希保存到对等网络中相应的节点上, 以完成整个网络中的索引日志的建立;并对于当前节点,利用所述位置敏感 哈希函数对该当前节点的下载记录进行哈希处理得到键值,根据负责索引所得键值中的至少一个键值的各个节点所保存的索引日志,获得当前节点的下 载推荐列表的技术方案,能够在对等网络中根据用户的下载历史,向用户推 荐其感兴趣的下载任务,从而为用户提供个性化的下载推荐服务。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护 范围,凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等, 均应包含在本发明的保护范围之内。
权利要求
1、一种基于结构化对等网络的提供下载推荐服务的方法,其特征在于,该方法包括对于对等网络中符合预定条件的每一个节点,利用位置敏感哈希函数对该节点的下载记录进行哈希处理,得到N个键值,N为自然数,将该节点的标识以及该节点的下载记录保存到对等网络中负责索引所述N个键值中的至少一个键值的各个节点上;对于对等网络中任一个节点,利用所述位置敏感哈希函数对该节点的下载记录进行哈希处理,得到N个键值,根据负责索引所述N个键值中的至少一个键值的各个节点所保存的节点标识和节点下载记录,确定与当前节点的下载记录最为相似的K个节点,K为自然数,根据该K个节点的下载记录获得当前节点的下载推荐列表。
2、 如权利要求1所述的方法,其特征在于,当所述符合预定条件的任 一个节点下载新的对象时或之后,该方法进一步包括根据该节点当前的下 载记录更新对等网络中所保存的该节点的标识以及该节点标识的下载记录。
3、 如权利要求l所述的方法,其特征在于,所述符合预定条件的节点 包括所下载文件的数目超过预定阀值的节点,和/或,在线时间超过预定 阀值的节点,和/或,下载查询次数超过预定阀值的节点。
4、 如权利要求l所述的方法,其特征在于,所述根据负责索引所述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个键值中的 至少 一 个键值的各个节点上进行保存;该节点包括哈希模块和下载推荐模块,其中,权利要求书第4/5页哈希模块,用于利用位置敏感哈希函数将自身所在节点的下载记录进行哈希处理,得到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个节点的下载记录获得自身所在节点的下载推荐列表,将所获取的下载推荐列表发送给下载模块。
全文摘要
本发明实施例公开了一种基于结构化对等网络的提供下载推荐服务方法和下载方法。利用位置敏感哈希函数,将对等网络中符合预定条件的每一个节点的下载记录哈希保存到对等网络中相应的节点上;对于当前节点,利用所述位置敏感哈希函数对该当前节点的下载记录进行哈希处理得到键值,根据负责索引所得键值中的至少一个键值的各个节点所保存的索引日志,获得当前节点的下载推荐列表;当前节点根据下载推荐列表进行下载。本发明实施例还公开了一种结构化的对等网络和三种结构化的对等网络中的节点。本发明实施例中的技术方案,能够在对等网络中根据用户的下载历史,向用户推荐其感兴趣的下载任务,从而为用户提供个性化的下载推荐服务。
文档编号H04L12/56GK101399738SQ200710151589
公开日2009年4月1日 申请日期2007年9月28日 优先权日2007年9月28日
发明者勇 俞, 霆 沈, 金洪波, 韩定一 申请人:华为技术有限公司;上海交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1