APP下载

基于SparkGraphX的企业信息族谱分析

2018-11-07樊继慧谌颃

电脑知识与技术 2018年21期
关键词:大数据

樊继慧 谌颃

摘要:互联网的高速发展让大数据应用有了更多用武之地,有关大数据的各类应用开始赢得市场。数据挖掘以及人工智能的市场越来越大,本文探讨并实现了基于Spark GraphX的企业信息族谱,通过对图计算的深入分析和应用,帮助用户实时查询企业相关的基本信息、股权结构、投资族谱、企业图谱、疑似关系等信息,同时快速了解企业信息、企业经营和人员投资状况,提供全面、可靠、透明的数据信息。

关键词:大数据;企业信息族谱;图计算

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2018)21-0083-02

数据挖掘技术在近几年发展蓬勃,云计算和人工智能一时间涌入大众的视野,各企业也纷纷引入新技术促进发展,新工科背景下很多高校开始设立数据科學与大数据技术专业,专门学习数据挖掘技术。数据挖掘是大数据中最重要也是最关键的工作[1]。

本文基于数据挖掘技术完成企业信息族谱的分析,进行深度商业“关系梳理”,以数据为切入点,以关系为最终产品,通过对企业数据的分析,帮助用户查询企业相关信息、投资图谱、股权结构、企业图谱等信息,快速上午了解企业信息、企业经营和人员投资状况,提供全面、可靠、透明的数据信息。在企业信息图谱的实现中,我们引入了图计算的经典算法Spark GraphX[2],并利用图谱分析时的广度优先搜索方法,实现了企业图谱[3]的实时动态显示。

1 Spark GraphX简介

Spark GraphX是一个分布式图处理框架[4],它是基于Spark平台提供对图计算和图挖掘简洁易用的而丰富的接口,极大的方便了对分布式图处理的需求。图的分布式或者并行处理其实是把图拆分成很多的子图,然后分别对这些子图进行计算,计算的时候可以分别迭代进行分阶段的计算,即对图进行并行计算。

通过对Wikipedia文档的分析,生成Link Table形式的视图,进一步分析成Hyperlinks超链接,最后我们可以使用PageRank去分析得出Top Communities。在下面路径中的Editor Graph到Community,这个过程可以称之为Triangle Computation,这是计算三角形的一个算法,基于此会发现一个社区。从上面的分析中我们可以发现图计算有很多的做法和算法,同时也发现图和表格可以做互相的转换。GraphX是一个新的Spark API,它用于图和分布式图的计算。GraphX通过引入弹性分布式属性图: 顶点和边均有属性的有向多重图,来扩展Spark RDD。为了支持图计算,GraphX开发了一组基本的功能操作以及一个优化过的Pregel API。另外,GraphX包含了一个快速增长的图算法和图builders的集合,用以简化图分析任务。

我们选取了Postgres SQL作为常规的关系型数据库[5]。Postgres SQL相对MySQL支持的类型更多,有良好的扩展性。为了保存图的数据,选取了目前相对较为成熟的Neo4j图数据库。由爬虫模块爬取数据并写入Postgres SQL数据库后,通过ETL技术抽取到图计算引擎GraphX,计算得到的结果存入图数据库Neo4j[6]。用户搜索企业的时候,通过Neo4j驱动,调取图谱信息,由前端将图可视化。展示界面如图1所示:

企业的关联信息将从关系型数据库PostgresSQL中ETL到图计算引擎GraphX,经过一系列计算后,存到Neo4j图数据库中。后台利用Neo4j数据库的Restful接口,获取关联的数据信息。前端通过Echart(v2:D3.js)将图谱可视化。

2 图谱分析时的广度优先搜索策略

广度优先遍历是连通图的一种遍历策略,它的核心思想是从某一个顶点开始,辐射状地优先遍历其周围较广的区域。企业信息族谱的实现过程中,巧妙的利用了广度优先搜索算法,在图计算的基础上,呈现出各个企业的相互关系、企业图谱、股权结构等。

1) 信息来源:爬取相关网站的企业公开信息。

2) 数据层:主要包括数据采集的爬虫、数据分析、关系型数据库、非关系型数据库。

3) 服务层: Web框架,提供B/S架构的RESTFUL API服务

4) 展示层:通过iView使用异步请求使用API,配合后端服务,完成前端渲染的Web应用。

5) 日志层:通过路由中间件,记录系统使用情况。

3 改进与优化

基于Spark GraphX的企业信息族谱的设计已经具备了实时查询企业相关的基本信息、股权结构、投资族谱、企业图谱、疑似关系等功能,然而数据并不是一成不变的,随着时间的推移,企业信息也会出现变化,后期会探索智能更新模块,定时扫描数据库的已有数据,结合消息队列,实现动态更新数据。

参考文献:

[1] 黄文秀.数据挖掘技术及应用研究[J].网络安全技术与应用,2018(7):59-60,68.

[2] 潘峰,怀丽波,崔荣一.基于分布式图计算的学术论文推荐算法[J].计算机应用研究,2019(6).

[3] 孙凯,刘玉华,张成海,等.基于网络数据的企业知识图谱可视化[J].东华大学学报:自然科学版,2016,42(4):473-477,484.

[4] 杨天晴,王津,杨旭涛, 等.一种Spark环境下的高效率大规模图数据处理机制[J].计算机应用研究,2016,33(12):3730-3734,3747.

[5] 陈英达,黄巨涛,林强, 等.关系型数据库逻辑设计规范研究[J].微型电脑应用,2018,34(6):1-2,7.

[6] 王红,张青青,蔡伟伟.基于Neo4j的领域本体存储方法研究[J].计算机应用研究,2017,34(8):2404-2407.

【通联编辑:闻翔军】

猜你喜欢

大数据
浅谈大数据在出版业的应用
“互联网+”对传统图书出版的影响和推动作用
大数据环境下基于移动客户端的传统媒体转型思路