CN106372127A - 基于Spark的大规模图数据的多样性图排序方法 - Google Patents

基于Spark的大规模图数据的多样性图排序方法 Download PDF

Info

Publication number
CN106372127A
CN106372127A CN201610715105.4A CN201610715105A CN106372127A CN 106372127 A CN106372127 A CN 106372127A CN 201610715105 A CN201610715105 A CN 201610715105A CN 106372127 A CN106372127 A CN 106372127A
Authority
CN
China
Prior art keywords
node
ppr
value
collection
cum rights
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
CN201610715105.4A
Other languages
English (en)
Other versions
CN106372127B (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.)
Yunnan University YNU
Original Assignee
Yunnan University YNU
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 Yunnan University YNU filed Critical Yunnan University YNU
Priority to CN201610715105.4A priority Critical patent/CN106372127B/zh
Publication of CN106372127A publication Critical patent/CN106372127A/zh
Application granted granted Critical
Publication of CN106372127B publication Critical patent/CN106372127B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2465Query processing support for facilitating data mining operations in structured databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Fuzzy Systems (AREA)
  • Software Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Physics (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于Spark的大规模图数据的多样性图排序方法,以大规模图数据的多样性图排序为目标,以图数据中结点间距离度量方法为基础,结合经典的个性化PageRank算法和基于距离的多样化度量方法进行图数据多样性图排序,具有可扩展性、更为高效等优点,且满足了海量图数据多样性图排序的数据存储和计算的要求,为海量图数据分析处理和挖掘等亟待解决的关键问题提供了有力的技术支持。

Description

基于Spark的大规模图数据的多样性图排序方法
技术领域
本发明属于数据挖掘及信息检索技术领域,更为具体地讲,涉及一种基于Spark的大规模图数据的多样性图排序方法。
背景技术
排序(Ranking)是信息检索、数据挖掘以及社会网络分析的基础工作之一。在信息检索系统中,较好的排序方法可以保证在有限的显示空间中呈现与用户查询相关性较高、信息冗余度较低的挖掘结果,从而最小化用户的查询放弃率,对于提高用户的信息检索服务体验意义重大。
由大量结点和表示结点之间关系的边组成的图数据,由于图中缺少显式的序,使得图排序在图数据分析和应用过程中显得尤为关键。已有的图数据排序方法,例如著名的PageRank,以及个性化的PageRank算法(Personalized PageRank,简称PPR),主要关注排序结果的全局重要性以及用户查询的相关性(Relevance)。然而,只强调排序结果的重要性或相关性,不一定总能满足用户的数据排序需求。例如,在信息检索系统中,用户的查询条件往往具有简单性和多义性的特点,现有的排序方法往往只能给出与某一主题相关的排序结果,忽略了查询结果的“多样性和非冗余性”的要求。
多样性图排序(Diversified Ranking on Graph)是提升图排序质量的有效途径,其主要目的是:在保证排序相关性的前提下,提高排序靠前的对象之间的多样性,希望能够在排序结果的相关性和多样性之间达到尽可能好的折中,从而有效提升图排序结果质量。程学旗等(<中国科学院院刊>,2015,30(2):248-256)分析了多样性图排序的现状和挑战;韩晓等(<计算机学报>,2015,38(2):365-373)针对科学文献图数据,提出了一种面向权威度和多样性的两阶段图排序模型。该模型融合权威度和差异性两个因素,对论文和作者排序,最终得到权威度高、覆盖面广的调研结果;杜攀(<中国科学院研究生院博士论文>,2011)将图数据的多样化排序问题形式化为一个带边界条件的热传导问题。借助热传导边界条件中的汇点,在排序中自然地揭示出了数据之间的差异性。最终实现了一种融合多样性的多目标排序方法;李靖(<天津大学硕士论文>,2012)基于随机游走模型,有效降低检索结果之间的冗余性,实现图像搜索的多样性重排序方法;陈飞等(<山东大学学报(理学版)>,2011,5(10):1897-1906)基于HITS算法计算查询结果多样性程度,基于此对结果列表进行重排序,实现搜索结果多样性。
当前,随着在线社交网络和社会媒体应用的快速发展,累积了海量图数据。这些图数据包括千万级规模的结点,亿级规模的边,单台机器已无法有效存储和处理大规模图数据。公知的多样性图排序方法均假设图数据能够存储在单机上,图排序算法在单机上执行。显然,已有技术方法无法有效处理大规模图数据的多样性图排序问题。
Apache Spark是一种基于内存的,面向海量数据分析与处理的并行、分布式计算平台。GraphX是Spark的并行、分布式图计算组件,能够有效应对大规模图数据的分析和处理。Spark的核心数据结构是弹性分布式数据集(Resilient Distributed Datasets,简写为RDD)。RDD是分布式内存的一个抽象概念,一个Spark应用程序通过创建RDD,并在RDD上施加相应的变换(Transform,例如map,join等)或操作(Action,例如reduce,sort等)行为实现计算逻辑,完成数据的分析和处理。
发明内容
本发明的目的在于克服现有技术的不足,提供一种基于Spark的大规模图数据的多样性图排序方法,克服了已有的多样性图排序技术无法有效处理大规模图数据的缺陷和不足,为大规模图数据的多样性图排序及其应用提供技术支撑。
为实现上述发明目的,本发明基于Spark的大规模图数据的多样性图排序方法,其特征在于,包括以下步骤:
(1)、获取个性化PageRank的查询相关结点集
(1.1)、通过GraphX中的GraphLoader.edgeListFile函数读入边表文件,生成图G,并缓存在内存中;其中,边表文件的格式为(v.id,u.id),v.id和u.id分别表示边e(v,u)两个端点v、u的标识号;
(1.2)、给定用户输入的查询结点q,调用GraphX中的personalizedPageRank函数,获取个性化PageRank的查询相关结点集,标记为pprRDD;其中,pprRDD的格式为(v.id,v.ppr),v.ppr表示结点v的个性化PageRank值;
(2)、收集每一个结点的邻居结点集
(2.1)、利用结点映射函数mapVertices对图G进行处理,得到图NbrsG;
(2.2)、根据用户需求,设置最大邻居步数l;
(2.3)、调用GraphX中的消息聚集函数aggregateMessages收集图NbrsG上每个结点的邻居结点,再通过结点连接操作joinVertices和集合并集运算union对收集的所有邻居结点进行合并,得到1步邻居结点集;再次调用aggregateMessages收集图NbrsG上每个结点的邻居结点,通过joinVertices和union运算对收集的所有邻居结点进行合并后再与1步邻居结点集求并集,得到1、2步邻居结点集;依次类推,循环到第l次,最终得到每一个结点的1、2、…、l步邻居结点集;
(2.4)、调用GraphX中的结点值映射函数mapValues对邻居结点集进行处理,得到集合l_NbrsRDD;其中,l_NbrsRDD的格式为(v.id,v.l_Nbrs),v.l_Nbrs是结点v的1、2、…、l步邻居结点集;
(3)、集成结点的ppr值和邻居结点信息
调用GraphX中的内连接函数innerJoin对集合pprRDD和l_NbrsRDD进行处理,得到带有结点ppr值和1、2、…、l步邻居结点集的并集vsWithNbrsRDD;其中,vsWithNbrsRDD的格式为(v.id,v.ppr,v.l_Nbrs);
(4)、基于结点间的带权距离的top-k多样性图排序
(4.1)、定义一解集S并初始化为空;设置top-k多样性图排序的k值;
(4.2)、定义一带权距离和集合disSumRDD,用于存储解集S外的每一个结点与当前解集S中所有结点的带权距离和,disSumRDD的格式为:(u.id,disSum),其中,u.id是解集S外任一结点u的id,disSum是结点u到当前解集S中所有结点的带权距离和,即disSum(u)=∑v∈Sd′(v,u),d′(v,u)为结点u和结点v的ppr带权距离值,disSum的初始值为0;
(4.3)、在图G中,任意选择一个结点u加入到解集S中,并将u标记为u*
(4.4)、将集合vsWithNbrsRDD与其自身做笛卡尔积cartesian运算,基于u*.id对笛卡尔积的结果进行过滤filter操作,得到一个u*与解集S外其余结点的RDD;其中,RDD的格式为((u*.id,u*.l_Nbrs),(v.id,v.l_Nbrs)),v.id是解集S外任一结点v的id,v.l_Nbrs是v的1、2、…、l步邻居结点集;
对RDD做并行化映射操作,得到u*与解集S外每一个结点v的1、2、…、l步邻居结点集的对称差;
(4.5)、设v.ppr和u.ppr分别为结点v和u的个性化PageRank值,定义一个函数dis_reduceFunc(v,u,A),该函数按照v.ppr+u.ppr+λ(|A|/|V|)来计算v和u之间的带权距离值,其中,|A|表示结点v和u的1、2、…、l步邻居结点集的对称差元素个数,|V|表示图G中的结点总数;
将dis_reduceFunc(v,u,A)作为reduce操作的参数,对步骤(4.4)中的RDD执行reduce操作,计算出v和u之间的带权距离值,得到带权距离值集合disRDD;其中,disRDD的格式为(v.id,u.id,dis),dis表示结点v和u之间的带权距离值;
(4.6)、通过join操作连接带权距离和集合disSumRDD和带权距离值集合disRDD,按照disSum←disSum+dis方式更新disSumRDD,得到本次迭代后的带权距离多样性图排序结果;
(4.7)、通过一个max操作,选择disSumRDD中距离和值最大的结点作为u*加入到解集S;
(4.8)、重复步骤(4.4)~(4.7),进行下一轮迭代,当迭代次数达到k值时,迭代停止,得到top-k多样性图排序结果。
本发明的发明目的是这样实现的:
本发明基于Spark的大规模图数据的多样性图排序方法,以大规模图数据的多样性图排序为目标,以图数据中结点间距离度量方法为基础,结合经典的个性化PageRank算法和基于距离的多样化度量方法进行图数据多样性图排序,具有可扩展性、更为高效等优点,且满足了海量图数据多样性图排序的数据存储和计算的要求,为海量图数据分析处理和挖掘等亟待解决的关键问题提供了有力的技术支持。
同时,本发明基于Spark的大规模图数据的多样性图排序方法还具有以下有益效果:
(1)、ppr带权距离融合了查询相关性和结点间差异性。本发明以最大化结果集的带权距离和作为多样性图排序的优化目标,与公知的面向权威度和多样性的两阶段图排序方法相比,模型更为直观,优化目标更具有可解释性。
(2)、本发明提出了基于主流的并行、分布式的图计算平台GraphX的多样性图排序方法。与公知方法相比,本发明通过基于集群的分布式存储解决图数据存储问题,通过并行图计算满足大规模图数据的快速处理要求,方法具有更好的可扩展性和高效性。
附图说明
图1是本发明基于Spark的大规模图数据的多样性图排序方法流程图;
图2是实施例图G的拓扑结构图;
图3是RDD变换操作示意图。
具体实施方式
下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。
实施例
本发明一种基于Spark的大规模图数据的多样性图排序方法包括两大步骤:(一)计算准备部分,其主要功能是:首先,执行个性化的PageRank,获得相关结点集及结点的个性化PageRank值(简写为,ppr),其次,完成图上结点的邻居信息收集,为结点间距离计算奠定基础;(二)计算实施部分,其主要功能是基于结点间的ppr带权距离值,通过k次迭代得到融合相关性和多样性的top-k结点排序结果。
下面结合实例对本发明进行详细说明,如图1所示,具体包括以下步骤:
(1)、获取个性化PageRank的查询相关结点集
(1.1)、通过GraphX中的GraphLoader.edgeListFile函数读入边表文件,生成图G,并缓存在内存中;其中,边表文件的格式为(v.id,u.id),v.id和u.id分别表示边e(v,u)两个端点v、u的标识号;在本实施例中,如图2所示,图G中包含16个结点,20条边有向边;
(1.2)、给定用户输入的查询结点q,调用GraphX中的personalizedPageRank函数,获取个性化PageRank的查询相关结点集,标记为pprRDD;其中,pprRDD的格式为(v.id,v.ppr),v.ppr表示结点v的个性化PageRank值,表征结点v与查询结点q的相关程度;在本实施例中,图3中的表1给出了图2所示的结点1作为查询结点时的pprRDD。
(2)、收集每一个结点的邻居结点集
(2.1)、利用结点映射函数mapVertices对图G进行处理,得到图NbrsG;
(2.2)、根据用户需求,设置最大邻居步数l,本实施例中,设l=2;
(2.3)、调用GraphX中的消息聚集函数aggregateMessages收集图NbrsG上每个结点的邻居结点,再通过结点连接操作joinVertices和集合并集运算union对收集的所有邻居结点进行合并,得到1步邻居结点集;再次调用aggregateMessages收集图NbrsG上每个结点的邻居结点,通过joinVertices和union运算对收集的所有邻居结点进行合并后再与1步邻居结点集求并集,得到1、2步邻居结点集;
在本实施例中,如结点3,第一次执行aggregateMessages可得1步邻居集{9,10};第二次执行aggregateMessages可分别得到结点9的1步邻居集{13,14},结点10的1步邻居集{7,11,13],执行求并集操作后得到{9,10}∪{13,14}∪{7,11,13}={7,9,10,11,13,14},即结点3的1、2步邻居集。如此循环2次,每个结点将得到其1,2邻居结点集的并集。
(2.4)、调用GraphX中的结点值映射函数mapValues对邻居结点集进行处理,得到集合l_NbrsRDD,如图3中的表2所示;其中,l_NbrsRDD的格式为(v.id,v.l_Nbrs),v.l_Nbrs是结点v的1、2步邻居结点集;
(3)、集成结点的ppr值和邻居结点信息
调用GraphX中的内连接函数innerJoin对集合pprRDD和l_NbrsRDD进行处理,得到带有结点ppr值和1、2步邻居结点集的并集vsWithNbrsRDD,如图3中的表3所示;其中,vsWithNbrsRDD的格式为(v.id,v.ppr,v.l_Nbrs);至此,完成了结点间带权距离计算的数据准备。
(4)、基于结点间的带权距离的top-k多样性图排序
(4.1)、定义一解集S并初始化为空;设置top-k多样性图排序的k值为4;
(4.2)、定义一带权距离和集合disSumRDD,用于存储解集S外的每一个结点与当前解集S中所有结点的带权距离和,disSumRDD的格式为:(u.id,disSum),其中,u.id是解集S外任一结点u的id,disSum是结点u到当前解集S中所有结点的带权距离和,即disSum(u)=∑v∈Sd′(v,u),d′(v,u)为结点u和结点v的ppr带权距离值,disSum的初始值为0;
其中,结点v和结点u的ppr带权距离值d′(v,u)的计算方法为:
两个结点v、u的距离为:
d ( v , u ) = | N l ( v ) &CirclePlus; N l ( u ) | | V |
其中,Nl(v)是结点v的1、2、…、l步邻居结点集,|V|表示图G中的结点总数,是集合间的对称差运算;
将结点v、u的ppr值融入到距离定义中,得到结点v、u的ppr带权距离值d′(v,u);
d′(v,u)=ppr(v)+ppr(u)+2λd(v,u)
其中,λ是相关性和多样性的折中因子,取值为0~1之间,本实施例中设为0.5。
(4.3)、在图G中,任意选择一个结点u加入到解集S中,并将u标记为u*;本实施例中,选择u=10,将结点10加入到解集S中,并设u*=10;
(4.4)、将集合vsWithNbrsRDD与其自身做笛卡尔积cartesian运算,基于u*.id对笛卡尔积的结果进行过滤filter操作,得到一个u*与解集S外其余结点的RDD;其中,RDD的格式为((u*.id,u*.l_Nbrs),(v.id,v.l_Nbrs)),v.id是解集S外任一结点v的id,v.l_Nbrs是v的1、2步邻居结点集;
对RDD做并行化映射操作,得到u*与解集S外每一个结点v的1、2步邻居结点集的对称差,其对称差的计算结果如图3中表4所示;
(4.5)、设v.ppr和u.ppr分别为结点v和u的个性化PageRank值,定义一个函数dis_reduceFunc(v,u,A),该函数按照v.ppr+u.ppr+λ(|A|/|V|)来计算v和u之间的带权距离值,其中,|A|表示结点v和u的1、2步邻居结点集的对称差元素个数,|V|表示图G中的结点总数;
将dis_reduceFunc(v,u,A)作为reduce操作的参数,对步骤(4.4)中的RDD执行reduce操作,计算出v和u之间的带权距离值,得到带权距离值集合disRDD;其中,disRDD的格式为(v.id,u.id,dis),dis表示结点v和u之间的带权距离值;在本实施例中,结点10与其余结点之间的ppr带权距离值如图3中表5所示;
(4.6)、通过join操作连接带权距离和集合disSumRDD和带权距离值集合disRDD,按照disSum←disSum+dis方式更新disSumRDD,得到本次迭代后的带权距离多样性图排序结果;
在本实施例中,由于第一次迭代时,每一项距离和均被初始化为0.0,因此更新后的disSumRDD中每一项均为0.0加相应的ppr带权距离值,其中,第一次迭代中,更新后的disSumRDD如图3中表6所示。
(4.7)、通过一个max操作,选择disSumRDD中距离和值最大的结点作为u*加入到解集S;在本实施例中,第一次迭代时,最大距离和值为0.0221,选择最小序号结点3加入到解集S中,于是当前解集为S={10,3},另外,设u*=3;
(4.8)、重复步骤(4.4)~(4.7),进行下一轮迭代,当迭代次数到达多样性图排序的最大排序次k时,迭代停止,得到top-k多样性图排序结果。
其中,对于多样性图排序的解集S,用如下两种指标对其进行有效性评估:
(a)、相关性评估指标
记解集S的相关度为Rel(S),并定义如下
Re l ( S ) = &Sigma; v &Element; S p p r ( v ) &Sigma; v &Element; S P P R p p r ( v )
其中,SPPR是个性化PageRank算法返回的结果集,ppr(v)是结点v的个性化PageRank的rank值,Rel(S)=1,说明SPPR具有最高相关性。对于多样性图排序的解集S,Rel(S)越大,说明S的相关性程度越高。
(b)、多样性评估指标
令G=<V,E>,且|V|=n。记解集S的扩展率为Exp(S),并定义如下:
E x p ( S ) = | N l ( S ) | n
,其中,|Nl(S)|是解集S的l步邻居结点集的结点数。Exp(S)越大,解集S的多样性程度越高。
假定k=4,经过4次迭代后即可得到top-4多样性图排序结果集为S={2,3,10,15},其查询相关性度量值Rel(S)=0.927,多样性度量值Exp(S)=0.625。
对于本实施例,查询结点为1时,其ppr查询top-4结果集为pprS={3,12,15,16},其查询相关性度量值Rel(pprS)=1.0,多样性度量值Exp(pprS)=0.435。
尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。

Claims (2)

1.一种基于Spark的大规模图数据的多样性图排序方法,其特征在于,包括以下步骤:
(1)、获取个性化PageRank的查询相关结点集
(1.1)、通过GraphX中的GraphLoader.edgeListFile函数读入边表文件,生成图G,并缓存在内存中;其中,边表文件的格式为(v.id,u.id),v.id和u.id分别表示边e(v,u)两个端点v、u的标识号;
(1.2)、给定用户输入的查询结点q,调用GraphX中的personalizedPageRank函数,获取个性化PageRank的查询相关结点集,标记为pprRDD;其中,pprRDD的格式为(v.id,v.ppr),v.ppr表示结点v的个性化PageRank值;
(2)、收集每一个结点的邻居结点集
(2.1)、利用结点映射函数mapVertices对图G进行处理,得到图NbrsG;
(2.2)、根据用户需求,设置最大邻居步数l;
(2.3)、调用GraphX中的消息聚集函数aggregateMessages收集图NbrsG上每个结点的邻居结点,再通过结点连接操作joinVertices和集合并集运算union对收集的所有邻居结点进行合并,得到1步邻居结点集;再次调用aggregateMessages收集图NbrsG上每个结点的邻居结点,通过joinVertices和union运算对收集的所有邻居结点进行合并后再与1步邻居结点集求并集,得到1、2步邻居结点集;依次类推,循环到第l次,最终得到每一个结点的1、2、…、l步邻居结点集;
(2.4)、调用GraphX中的结点值映射函数mapValues对邻居结点集进行处理,得到集合l_NbrsRDD;其中,l_NbrsRDD的格式为(v.id,v.l_Nbrs),v.l_Nbrs是结点v的1、2、…、l步邻居结点集;
(3)、集成结点的ppr值和邻居结点信息
调用GraphX中的内连接函数innerJoin对集合pprRDD和l_NbrsRDD进行处理,得到带有结点ppr值和1、2、…、l步邻居结点集的并集vsWithNbrsRDD;其中,vsWithNbrsRDD的格式为(v.id,v.ppr,v.l_Nbrs);
(4)、基于结点间的带权距离的top-k多样性图排序
(4.1)、定义一解集S并初始化为空;设置top-k多样性图排序的k值;
(4.2)、定义一带权距离和集合disSumRDD,用于存储解集S外的每一个结点与当前解集S中所有结点的带权距离和,disSumRDD的格式为:(u.id,disSum),其中,u.id是解集S外任一结点u的id,disSum是结点u到当前解集S中所有结点的带权距离和,即disSum(u)=∑v∈ Sd′(v,u),d′(v,u)为结点u和结点v的ppr带权距离值,disSum的初始值为0;
(4.3)、在图G中,任意选择一个结点u加入到解集S中,并将u标记为u*;
(4.4)、将集合vsWithNbrsRDD与其自身做笛卡尔积cartesian运算,基于u*.id对笛卡尔积的结果进行过滤filter操作,得到一个u*与解集S外其余结点的RDD;其中,RDD的格式为((u*.id,u*.l_Nbrs),(v.id,v.l_Nbrs)),v.id是集S外任一结点v的id,v.l_Nbrs是v的1、2、…、l步邻居结点集;
对RDD做并行化映射操作,得到u*与解集S外每一个结点v的1、2、…、l步邻居结点集的对称差;
(4.5)、设v.ppr和u.ppr分别为结点v和u的个性化PageRank值,定义一个函数dis_reduceFunc(v,u,A),该函数按照v.ppr+u.ppr+λ(|A|/|V|)来计算v和u之间的带权距离值,其中,|A|表示结点v和u的1、2、…、l步邻居结点集的对称差元素个数,|V|表示图G中的结点总数;
将dis_reduceFunc(v,u,A)作为reduce操作的参数,对步骤(4.4)中的RDD执行reduce操作,计算出v和u之间的带权距离值,得到带权距离值集合disRDD;其中,disRDD的格式为(v.id,u.id,dis),dis表示结点v和u之间的带权距离值;
(4.6)、通过join操作连接带权距离和集合disSumRDD和带权距离值集合disRDD,按照disSum←disSum+dis方式更新disSumRDD,得到本次迭代后的带权距离多样性图排序结果;
(4.7)、通过一个max操作,选择disSumRDD中距离和值最大的结点作为u*加入到解集S;
(4.8)、重复步骤(4.4)~(4.7),进行下一轮迭代,当迭代次数到达多样性图排序的最大排序次k时,迭代停止,得到top-k多样性图排序结果。
2.根据权利要求1所述的基于Spark的大规模图数据的多样性图排序方法,其特征在于,所述的步骤(4.1)中,结点v和结点u的ppr带权距离值d′(v,u)的计算方法为:
两个结点v、u的距离为:
d ( v , u ) = | N l ( v ) &CirclePlus; N l ( u ) | | V |
其中,Nl(v)是结点v的1、2、…、l步邻居结点集,|V|表示图G中的结点总数,是集合间的对称差运算;
将结点v、u的ppr值融入到距离定义中,得到结点v、u的ppr带权距离值d′(v,u);
d′(v,u)=ppr(v)+ppr(u)+2λd(v,u)
其中,λ是相关性和多样性的折中因子,取值为0~1之间。
CN201610715105.4A 2016-08-24 2016-08-24 基于Spark的大规模图数据的多样性图排序方法 Active CN106372127B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610715105.4A CN106372127B (zh) 2016-08-24 2016-08-24 基于Spark的大规模图数据的多样性图排序方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610715105.4A CN106372127B (zh) 2016-08-24 2016-08-24 基于Spark的大规模图数据的多样性图排序方法

Publications (2)

Publication Number Publication Date
CN106372127A true CN106372127A (zh) 2017-02-01
CN106372127B CN106372127B (zh) 2019-05-03

Family

ID=57878988

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610715105.4A Active CN106372127B (zh) 2016-08-24 2016-08-24 基于Spark的大规模图数据的多样性图排序方法

Country Status (1)

Country Link
CN (1) CN106372127B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106874215A (zh) * 2017-03-17 2017-06-20 重庆邮电大学 一种基于Spark算子的序列化存储优化方法
CN111639082A (zh) * 2020-06-08 2020-09-08 成都信息工程大学 基于Ceph的十亿级节点规模知识图谱的对象存储管理方法及系统
CN112308630A (zh) * 2020-11-16 2021-02-02 上海品见智能科技有限公司 一种基于大数据技术应用的资金交易圈识别方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105005627A (zh) * 2015-08-07 2015-10-28 上海交通大学 基于Spark分布式系统的最短路径关键点查询方法
CN105205169A (zh) * 2015-10-12 2015-12-30 中国电子科技集团公司第二十八研究所 一种分布式图像索引与检索方法
CN105550318A (zh) * 2015-12-15 2016-05-04 深圳市华讯方舟软件技术有限公司 一种基于Spark大数据处理平台的查询方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105005627A (zh) * 2015-08-07 2015-10-28 上海交通大学 基于Spark分布式系统的最短路径关键点查询方法
CN105205169A (zh) * 2015-10-12 2015-12-30 中国电子科技集团公司第二十八研究所 一种分布式图像索引与检索方法
CN105550318A (zh) * 2015-12-15 2016-05-04 深圳市华讯方舟软件技术有限公司 一种基于Spark大数据处理平台的查询方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
赵波: "PageRank算法在非网页检索问题中的应用", 《万方数据》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106874215A (zh) * 2017-03-17 2017-06-20 重庆邮电大学 一种基于Spark算子的序列化存储优化方法
CN106874215B (zh) * 2017-03-17 2020-02-07 重庆邮电大学 一种基于Spark算子的序列化存储优化方法
CN111639082A (zh) * 2020-06-08 2020-09-08 成都信息工程大学 基于Ceph的十亿级节点规模知识图谱的对象存储管理方法及系统
CN111639082B (zh) * 2020-06-08 2022-12-23 成都信息工程大学 基于Ceph的十亿级节点规模知识图谱的对象存储管理方法及系统
CN112308630A (zh) * 2020-11-16 2021-02-02 上海品见智能科技有限公司 一种基于大数据技术应用的资金交易圈识别方法

Also Published As

Publication number Publication date
CN106372127B (zh) 2019-05-03

Similar Documents

Publication Publication Date Title
Shang et al. Parallel trajectory similarity joins in spatial networks
Rocha-Junior et al. Top-k spatial keyword queries on road networks
Bouros et al. Spatio-textual similarity joins
Cao et al. Retrieving top-k prestige-based relevant spatial web objects
Ma et al. Big graph search: challenges and techniques
Prajapati A survey paper on hyperlink-induced topic search (HITS) algorithms for web mining
CN106528648A (zh) 结合Redis内存数据库的分布式RDF关键词近似搜索方法
Belesiotis et al. Spatio-textual user matching and clustering based on set similarity joins
Jin et al. Querying web-scale information networks through bounding matching scores
CN106372127A (zh) 基于Spark的大规模图数据的多样性图排序方法
Luo et al. Efficient reverse spatial and textual k nearest neighbor queries on road networks
Liu et al. A feasible graph partition framework for parallel computing of big graph
Wu et al. HY-DBSCAN: A hybrid parallel DBSCAN clustering algorithm scalable on distributed-memory computers
Shan et al. Searching overlapping communities for group query
Xu et al. Continuous k nearest neighbor queries over large multi-attribute trajectories: a systematic approach
Mendoza et al. Reducing hardware hit by queries in web search engines
Karras et al. Query optimization in NoSQL databases using an enhanced localized R-tree index
García-García et al. Efficient distributed algorithms for distance join queries in spark-based spatial analytics systems
da Silva et al. Efficient and distributed dbscan algorithm using mapreduce to detect density areas on traffic data
Yuan et al. Result merging for structured queries on the deep web with active relevance weight estimation
Lee et al. Fast mining of spatial frequent wordset from social database
Gao et al. Preference-aware top-k spatio-textual queries
Hao et al. An association-oriented partitioning approach for streaming graph query
Li et al. A novel approach for mining probabilistic frequent itemsets over uncertain data streams
Cheng et al. Generic cumulative annular bucket histogram for spatial selectivity estimation of spatial database management system

Legal Events

Date Code Title Description
C06 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