EN
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

WCE

WeakCliqueEnumeration API

  • API
    def run[T: ClassTag](graph: RDD[(T, T)], maxIteration: Int, maxDegree: Int) : (RDD[(Long, Long)], RDD[(String, Long)])
  • 功能描述

    根据指定规则计算关系网络中弱通联信息。

  • 输入输出
    1. 包名:package org.apache.spark.graphx.lib
    2. 类名:WeakCliqueEnumeration
    3. 方法名:run
    4. 输入:RDD[(T, T)],图边数据,顶点类型可以是String或者Integer。
    5. 核心参数:
      1. maxDegree: 算法接受节点最大不同节点个数。若节点的度数大于等于maxDegree,则与之相连的节点从源数据中删除。
      2. maxIter: 计算连通分量时最大迭代次数。
    6. 输出:

      RDD[(Int , T)]——节点映射关系:新节点ID 原节点ID。

      RDD[(Int, String)]——节点所属极大团:新节点ID 弱团编号。

      参数名称

      参数含义

      取值类型

      graph

      图边数据

      RDD[(T, T)]

      maxIteratio n

      计算联通分量的迭代次数

      Int如6等,-1表示精确收敛

      maxDegree

      节点最大度数(指和该节点相关联的边的条数)

      Int如2000等

      T

      节点类型

      String或Int或Long,可支持中文输入

  • 使用样例

    WeakCliqueEnumeration样例:

    val conf = new SparkConf().setAppName("weakclique").setMaster(master)
    val sc = new SparkContext(conf)
    val inputData = Array(
    ("1", "2"),
    ("1", "3"),
    ("2", "3"),
    ("1", "4"),
    ("1", "5"),
    ("4", "5"),
    ("6", "2"),
    ("6", "3"))
    val inputDataRdd = sc.parallelize(inputData)
    WeakCliqueEnumeration.run(inputDataRdd, 6, 2000)
  • 结果样例

    输出有两部分,分别为map_info和clique_info。其中map_info中保存节点映射信息, clique_info保存弱团信息。

    1. map_info内容如下,每一行内容是(节点原始ID,节点新ID)。
      1,0
      2,1
      3,2
      4,3
      5,4
      6,5
    2. clique_info内容如下,每一行内容是(节点新ID,弱团ID)。
      0,0
      1,0
      2,0
      5,0
      0,1
      3,1
      4,1