Spark GraphX 之同人关系归一分析 (一)

Spark GraphX 之同人关系归一分析 


一、绪论

1.1 研究背景和意义

随着互联网的迅速发展,多种多样网络应用程序呈现了爆发式的增长,直接造成人们对互联网的高度依赖性,人们的生活方式也逐步从现实生活转变到以网络生活为主的模式。人们通过网络与他人进行交流沟通,通过网络邮件的方式传递重要文件或信息,通过网络购物满足对象生活物质的追求,通过网络视频来满足对生活娱乐的追求等等。然而,用户在互联网上进行通信、娱乐或者消费等各个方面,都需要使用到一种网络虚拟身份,这个网络虚拟身份可是用户的QQ账号,微信账号,邮箱账号,手机号码,论坛账号,微博账号等等。然而现实中,多家政府单位也同样有一系列身份,例如:身份证件号码、房产信息账号、汽车牌照号码、社保账号等等。通常来说,一个实现用户在多家政府单位、多个网站和移动应用程序上都拥有自己的现实身份和虚拟身份,所以将拥有多种多样的虚拟身份进行归一到现实用户身份上是本次调研的核心。

二、基本理论方法和技术

图(graph)是对网络的结构抽象,通常表示为G=(V,E)。它是由定点集合V和边的集合E构成的一种数据结构,用来描述网络内各个实体的特征和关联关系。它用定点记录实体的特征属性,用边来表征实体之前各类复杂的关联关系。

2.1 Spark Graphx

GraphX是Spark中用于图形和图形并行计算的新组件。在高层次上, GraphX通过引入一个新的图形抽象来扩展 SparkRDD:一种具有附加到每个顶点和边缘的属性的定向多重图形。为了支持图形计算,GraphX 公开了一组基本运算符(例如:subgraphjoinVerticesaggregateMessages)以及PregelAPI的优化变体。此外,GraphX 还包括越来越多的图形算法构建器,以简化图形分析任务。

RDD是构建Spark程序的基础模块,它提供了灵活、高效、并行化数据处理和容错等特性。在GraphX中,图的基础类为Graph,它包含两个RDD:一个为边RDD,另一个为顶点RDD,如下图:

与其他图处理系统和图数据库相比,基于图概念和图处理原语的GraphX,它的一大优势在于,既可以将底层数据看作一个完整的图,使用图概念和图处理原语;也可以将他们看作独立的边RDD和顶点RDD,使用数据平行处理原语,进行mapped、joined、transformed等操作。

可以用给定的边RDD和顶点RDD进行构建一个图。一旦构建好图,就可以用函数edges()和vertices()来访问边和顶点的集合。UML图如下:

2.2 Pregel计算模型

Pregel是由Google在2010年推出的专门处理图数据的分布式处理平台,也是第一个用来处理图数据的分布式处理平台,具有里程碑的意义。Pregel基于消息通信的节点式编程实现,它采用随机分割策略对图数据进行分割,节点之间通过消息通信完成操作,其数据同步机制采用Bulk Synchoronous Parallel Model(BSP同步栅栏模型)。

2.2.1 BSP

整体同步并行计算模型(Bulk Synchronous Parallel Comput

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值