发明名称 一种基于Hadoop平台的社区发现算法
摘要 本发明公开了一种基于Hadoop平台的社区发现算法,在MapReduce架构下实现,包括四个步骤:①读入社会网络数据,构建无向图G,通过数据分片得到节点n、相关节点个数D;②计算每两个节点之间的紧密度,并将处理后的数据写出到文件;③分割数据行为边和紧密度,完成节点集,将数据以(节点,节点集编号)的形式存储在数据结构Hashtable中;④根据步骤三的数据,找出未加入节点集的节点,将其划入与其有联系的相关节点所在节点集中。本发明显著提高了算法的数据处理能力,将运算规模提高到上亿次,大幅提高了对大规模社交网络的挖掘和分析能力,实时性高;本发明基于全网络进行分析和搜索,采用从社区核心向外逐渐扩散的挖掘方式,提高了社区算法的效率,准确度高。
申请公布号 CN106204293A 申请公布日期 2016.12.07
申请号 CN201610501484.7 申请日期 2016.06.30
申请人 河北科技大学 发明人 张妍
分类号 G06Q50/00(2012.01)I 主分类号 G06Q50/00(2012.01)I
代理机构 长沙星耀专利事务所 43205 代理人 许伯严
主权项 一种基于Hadoop平台的社区发现算法,其特征在于:所述社区发现算法在hadoop平台的MapReduce架构下实现,包括以下四个步骤:步骤一:读入社会网络数据,根据网络中成员的关系,构建一个相互连接的无向图G,将无向图G中的成员用节点n表示,成员与成员之间的关系用边m表示;在配置有 Hadoop 环境的计算集群上完成数据分片,数据作为Mapper输入;计算得到节点n、以及与每个节点有关联的相关节点个数D,确定系统中最大相关节点个数Dmax,将节点n、相关节点个数D的数据存储在数据结构Hashtable中;步骤二:查询步骤一的Hashtable数据,计算每两个节点之间的紧密度,并将紧密度作为key、边作为value使用Context上下文对象写出,修改Compare方法使数据按倒叙排序;Reduce过程中的key为重写的DoubleWritable,value集合里面只包含一条数据,通过迭代,将数据使用上下文对象写出到一个文件,并再存储一份以边为key、以紧密度为value的Hashtable;步骤三:以步骤二写出的文件所在目录为输入目录,分割数据行为边和紧密度两部分,将当前边以静态字符串形式存储在程序中;任意选择一条边作为第一条边,判断边两端的两个节点是否在节点列表,若在节点列表中,则放入当前节点集,将所有与当前节点集合中节点紧密度最大的节点依次加入节点集,直至符合要求的节点被全部找出,结束添加、完成一个节点集;对节点集进行编号,以节点集编号为key、节点为value的形式使用上下文对象Context写出;Reduce过程以节点集编号作为key、节点为value作为输入,将数据以(节点,节点集编号)的形式存储在数据结构Hashtable中;步骤四:根据步骤三的数据,找出未加入节点集的节点,将其划入与其有联系的相关节点所在节点集中;在Map过程将Hashtable中的社区数据一次性写出;在Reduce过程将Map写出的数据以(节点集编号,节点)的形式写出在HDFS文件上。
地址 050018 河北省石家庄市裕翔街26号