[发明专利]一种基于MapReduce的大规模图数据关键词搜索方法有效

专利信息
申请号: 201410736421.0 申请日: 2014-12-05
公开(公告)号: CN104484368B 公开(公告)日: 2018-04-24
发明(设计)人: 李荣华;廖凯华;毛睿;秦璐;蔡涛涛;邱宇轩 申请(专利权)人: 深圳大学
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 深圳市兴科达知识产权代理有限公司44260 代理人: 王翀
地址: 518000 广东*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开一种基于MapReduce的大规模图数据关键词搜索算法,基于分布式编程框架MapReduce来处理大规模图数据的关键词搜索,在大规模图数据关键词搜索问题中具有良好的适用性,从根本上解决了基于内存的贯序算法的局限性,在社交网络分析、图数据管理、和图数据挖掘等相关技术领域具有广泛的应用前景。
搜索关键词: 一种 基于 mapreduce 大规模 数据 关键词 搜索 算法
【主权项】:
一种基于MapReduce的大规模图数据关键词搜索方法,包含以下步骤:S1、关键词节点扩展:使用两MapReduce任务迭代进行关键词扩展,分别记为MapReduce1和MapReduce2;所述的MapReduce 1合并文件dfile和文件sfile中的数据;所述的MapReduce 2对MapReduce1产生的节点所有可能的扩展方式,保留其中最短路径距离小于Rmax的点对;其中,MapReduce 1.合并dfile和sfile中的数据,在Map阶段,为dfile中所有的点对u→(v,ki,dist(u,v))创建key/value键值对并标记为关键词对;为sfile中所有的边u→(v,we(u,v))统一创建u→(v,φ,we(v,u))格式的key/value键值对并标记为结构点对,φ为空集;在Reduce阶段,具有相同key的关键词对和结构点对会被分配到同一分组;对每一关键词点对u→(v,ki,dist(u,v))和每一结构点对u→(v,φ,we(v,u)),产生一个v′→(v,ki,we(v′,u)+dist(u,v))键值对并输出到临时文件temp中;由于节点u和包含关键词ki的节点v距离为dist(u,v),并且节点v′到节点u之间有一条权值为we(v′,u)的边,因此可以得出v′到v的距离为we(v′,u)+dist(u,v);其中,MapReduce 2.第一个MapReduce产生了节点所有可能的扩展方式,这意味着同一关键词节点由于入度大于1可能会被扩展多次,在第二个MapReduce阶段,对于在MapReduce 1产生的临时文件temp和初始dfile文件中的每一关键词节点/中心节点对,如果它被扩展多次,只保留其中路径距离小于Rmax并且路径最短的的点对;在Map阶段,首先为dfile中的点对u→(v,ki,dist(u,v))创建格式为(u,v,ki)→dist(u,v)的键值对;其次,扫描MapReduce 1产生的临时文件temp,为temp中的点对u→(v,ki,dist(u,v))创建格式为(u,v,ki)→dist(u,v)的键值对,在Reduce阶段,首先创建一个空的dfile2文件;对于有相同key的键值对,保留其中路径dist(u,v)最短的,然后,创建格式为u→(v,ki,dist(u,v))的键值对并输入到新的dfile2中,当新的dfile2和初始dfile相同的时候,迭代停止,dfile中即为所需的路径距离小于Rmax的关键词节点/中心节点对;其中dfile文件存储所有关键词节点/中心节点对的最短路径,存储形式为u→(v,ki,dist(u,v))键值对,表示节点u在经过dist(u,v)的距离到达包含关键词ki的节点v;其中sfile文件存储图的结构,每条边(u,v)∈E(G)都以u→(v,we(u,v))的形式存储在键值对中,表示从节点u到节点v有一条权值为we(u,v)的边;其中Rmax:表示社区中关键词节点和中心节点之间的最大距离;S2、中心节点扩展:使用1个MapReduce任务产生包含所有关键词的星型集合stars;MapReduce过程:在关键字节点扩展阶段得到了所有的点对v→(u,ki,dist(v,u)),这里u包含关键词ki,ki∈q并且dist(v,u)<Rmax;在中心节点扩展阶段,需要求得包含所有关键词并且具有相同中心点c的星型结构集合Star(c);使用一个单独的MapReduce来实现该中心节点扩展阶段;在Map阶段,为dfile文件中的每个点对v→(u,ki,dist(v,u))创建一个格式相同的键值对;在Reduce阶段,通过grouping函数把具有相同中心节点v且距离在Rmax内的关键词节点分配到同一组;设Pi(v)表示与中心节点v距离在Rmax内包含关键词ki的关键词节点集,对每个(u1,u2,···,ul)∈P1(v)×P2(v)···×Pl(v),通过reduce函数创建一个(u1,u2,···,ul)→v键值对并输出到cfile;这里(u1,u2,···,ul)是包含关键词(k1,k2,···,kl)的关键词节点集合,v表示能够在路径距离Rmax内达到所有u1,u2,···,ul节点的中心节点;由此得到了多个包含社区核的星型结构体集合Star;S3、社区生成阶段:使用1个MapReduce任务生成包含所有查询关键词的社区;MapReduce过程:在中心节点扩展阶段已经产生了包含社区的核的节点集Star,社区生成阶段只需对具有相同核的星型结构集Star求笛卡尔积来产生所有可能社区;需要1个MapReduce来完成;在Map阶段,把中心节点扩展阶段输出cfile作为Mapper函数输入并创建(u1,u2,···,ul)→v键值对;在Reduce阶段,使用grouping函数把具有相同核(u1,u2,···,ul)的星型结构集分配到同一组,并对所有的中心节点集(v1,v2,···)求笛卡尔积来产生所有可能社区,这里,(u1,u2,···,ul)表示社区的核,(v1,v2,···)表示社区的中心节点;在关键词节点扩展生成dfile阶段,path‑nodes包含在中心节点/关键词节点对所对应的最短路径中;因此path‑nodes也包含在中心节点扩展阶段的每个Star中和最后社区生成阶段的每个社区中;其中,we(v,u)表示边(u,v)∈E(G)的权值;dist(u,v)表示在图G中从节点u到节点v最短路径的总距离;V(G),E(G)分别表示给定图G中的节点集和边集;ki中小标i的取值范围是所有关键词;q是查询关键词的集合。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳大学,未经深圳大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201410736421.0/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top