基于图数据库的图计算平台框架的设计与实现
发布时间:2021-04-09 20:09
随着如今已经全面移动互联网时代和大数据时代,社交网络和知识图谱等领域已经得到了越来越多的研究和关注,这些领域的数据彼此之间有着很强的关联性,传统的关系型数据库在处理关联性数据时要进行大量的表连接从而造成效率低下以及时间开销很大。面对这样的应用场景所带来的问题,产生了图数据库技术并得到了飞速的发展。而Neo4j作为目前市场上名列前茅的图数据库以及图计算领域的Spark GraphX在这样的背景下都得到了越来越广泛的应用。但是,众多的图数据库也为开发人员带来了不便,因此本文希望设计一个统一的、可扩展的图计算平台框架,能够覆盖底层不同图数据库,而统一上层的应用和展示接口。本文以图数据库Neo4j和图计算引擎Spark GraphX为例,设计并实现了一个图计算平台框架。框架在整体设计层面划分为持久模块、算法模块、控制模块和应用模块。在模块的实现代码层面引入了简单工厂、工厂方法、抽象工厂设计模式,从而让整个框架实现了解耦合与可扩展。本文对框架的持久模块与部分算法模块的接口进行了实现,包括图数据生成器、Neo4j导入器以及HDFS导入器,以及SSSP、PageRank、节点中心度、三角形计数等图算...
【文章来源】:北京化工大学北京市 211工程院校 教育部直属院校
【文章页数】:98 页
【学位级别】:硕士
【部分图文】:
图2-4?Neo4j体系架构层??Fig.2-4?Neo4j?architecture?layers??Ne〇4j在应用层通过Cypher语言提供对外的服务
中间组件主要负责访问基础组??件组织与管理的图数据,并且基于这些图数据进行图计算,并将算法运行结果返回给??应用组件,中间组件设计的算法计算决定了整个框架执行效率和运行速度;应用组件??主要负责对中间组件提供的算法计算进行服务请求,并且将图计算结果进行前端可视??化的展示,应用组件的可视化展示决定了整个框架在计算结果的呈现上是否直观。框??架功能的组件划分如下图所示:??返回结果I垠回结果?????丨请求服务丨?丨请求服务丨??—?—?mM??______?__??图3-1框架功能组件划分.??Fig.3-1?Framework?fiinctional?component?division??基础组件主要细分成三种功能:数据导入、数据存储和数据管理。其中数据导入??是将获取到的图数据按照特定的格式导入到图数据库Ne〇4j中,比如要使用CSV格??式的数据文件,同时指定数据文件的表头、指定数据节点ID的数据类型、指定图中??的关系的起始节点和结束节点、指定关系的类型;而对于超大规模的数据文件,将其??导入到分布式文件系统HDFS;数据存储是将导入到Ne〇4j的图数据按照节点和边的??不同类型进行分类存储,并且对于不同应用场景的图数据生成不同的连接图进行存储;??27??
?I??|?createByArgs()?>|??圍?createNoArgs()?.-略一?mi?;??_??calculate(args)-—??---|??t?Ho?f?*|?!???^createByArgs(^——一^——???createNoArgs?(〉—????;???_?构适‘???i?calculate(args)?!?1?順??????_4——......——?i?—i???|?|?;?!?i?!?■??图3-12抽象工厂时序图??Fig.3-12?Abstract?Method?Sequence?Diagram??3.5?本章小结??本章论述了整个图计算平台在整体设计层面所涉及到的需求分析,包括整个框架??所需要完成的功能,将这些功能划分为基础组件、中间组件和应用组件,同时对于完??40??
【参考文献】:
期刊论文
[1]基于Neo4j桂枝汤类方知识图谱的研究与实现[J]. 赵凯,王华星,施娜,萨震,许筱颖. 世界中医药. 2019(10)
[2]一种基于Neo4j图数据库的模糊查询研究与实现[J]. 李雪. 计算机技术与发展. 2018(11)
[3]基于Neo4j的重点人超级关系分析应用探索[J]. 刘婷,林君. 电信快报. 2018(06)
[4]基于Neo4j图数据库的课程体系知识图谱系统设计与实现[J]. 肖庆都,屈亮亮,侯霞. 电脑知识与技术. 2017(36)
[5]基于深度学习与图数据库构建中文商业知识图谱的探索研究[J]. 王仁武,袁毅,袁旭萍. 图书与情报. 2016(01)
[6]基于Neo4j的电力大数据建模及分析[J]. 马义松,武志刚. 电工电能新技术. 2016(02)
[7]基于图数据库Neo4j的话单分析研究[J]. 黄冰倩,黄淑华,刘思言. 网络安全技术与应用. 2015(07)
[8]基于Neo4j处理大数据中元数据溯源的研究[J]. 靳永超,吴怀谷. 现代计算机(专业版). 2015(08)
[9]图数据库在网络优化系统中的应用[J]. 席瀚英. 电信技术. 2014(09)
硕士论文
[1]基于Neo4j的人员关联分析与吸毒倾向预测平台的设计[D]. 祁烁.山东大学 2019
[2]基于Neo4j图数据库构建中学语文诗词知识图谱[D]. 冯俐.陕西师范大学 2019
[3]基于Neo4j的煤矿领域知识图谱构建及查询方法研究[D]. 叶帅.中国矿业大学 2019
[4]基于SEF框架的代码生成工具的设计与实现[D]. 赵丽娜.山东大学 2018
[5]基于Spark平台支持空间数据管理的图计算框架的研究[D]. 王昌圆.山东大学 2018
[6]基于Spark的子图匹配算法研究与实现[D]. 郭腾.北京交通大学 2017
[7]基于Spark的社会网络分析系统的设计与实现[D]. 崔印昌.北京邮电大学 2017
[8]基于MapReduce的图数据库频繁子图挖掘[D]. 王凯.华中科技大学 2016
[9]基于NOSQL数据库的路网最短路径查询及优化研究[D]. 于海鹏.北京工业大学 2016
[10]基于Neo4j的大数据组织检索研究与应用[D]. 陆鹏.东南大学 2015
本文编号:3128240
【文章来源】:北京化工大学北京市 211工程院校 教育部直属院校
【文章页数】:98 页
【学位级别】:硕士
【部分图文】:
图2-4?Neo4j体系架构层??Fig.2-4?Neo4j?architecture?layers??Ne〇4j在应用层通过Cypher语言提供对外的服务
中间组件主要负责访问基础组??件组织与管理的图数据,并且基于这些图数据进行图计算,并将算法运行结果返回给??应用组件,中间组件设计的算法计算决定了整个框架执行效率和运行速度;应用组件??主要负责对中间组件提供的算法计算进行服务请求,并且将图计算结果进行前端可视??化的展示,应用组件的可视化展示决定了整个框架在计算结果的呈现上是否直观。框??架功能的组件划分如下图所示:??返回结果I垠回结果?????丨请求服务丨?丨请求服务丨??—?—?mM??______?__??图3-1框架功能组件划分.??Fig.3-1?Framework?fiinctional?component?division??基础组件主要细分成三种功能:数据导入、数据存储和数据管理。其中数据导入??是将获取到的图数据按照特定的格式导入到图数据库Ne〇4j中,比如要使用CSV格??式的数据文件,同时指定数据文件的表头、指定数据节点ID的数据类型、指定图中??的关系的起始节点和结束节点、指定关系的类型;而对于超大规模的数据文件,将其??导入到分布式文件系统HDFS;数据存储是将导入到Ne〇4j的图数据按照节点和边的??不同类型进行分类存储,并且对于不同应用场景的图数据生成不同的连接图进行存储;??27??
?I??|?createByArgs()?>|??圍?createNoArgs()?.-略一?mi?;??_??calculate(args)-—??---|??t?Ho?f?*|?!???^createByArgs(^——一^——???createNoArgs?(〉—????;???_?构适‘???i?calculate(args)?!?1?順??????_4——......——?i?—i???|?|?;?!?i?!?■??图3-12抽象工厂时序图??Fig.3-12?Abstract?Method?Sequence?Diagram??3.5?本章小结??本章论述了整个图计算平台在整体设计层面所涉及到的需求分析,包括整个框架??所需要完成的功能,将这些功能划分为基础组件、中间组件和应用组件,同时对于完??40??
【参考文献】:
期刊论文
[1]基于Neo4j桂枝汤类方知识图谱的研究与实现[J]. 赵凯,王华星,施娜,萨震,许筱颖. 世界中医药. 2019(10)
[2]一种基于Neo4j图数据库的模糊查询研究与实现[J]. 李雪. 计算机技术与发展. 2018(11)
[3]基于Neo4j的重点人超级关系分析应用探索[J]. 刘婷,林君. 电信快报. 2018(06)
[4]基于Neo4j图数据库的课程体系知识图谱系统设计与实现[J]. 肖庆都,屈亮亮,侯霞. 电脑知识与技术. 2017(36)
[5]基于深度学习与图数据库构建中文商业知识图谱的探索研究[J]. 王仁武,袁毅,袁旭萍. 图书与情报. 2016(01)
[6]基于Neo4j的电力大数据建模及分析[J]. 马义松,武志刚. 电工电能新技术. 2016(02)
[7]基于图数据库Neo4j的话单分析研究[J]. 黄冰倩,黄淑华,刘思言. 网络安全技术与应用. 2015(07)
[8]基于Neo4j处理大数据中元数据溯源的研究[J]. 靳永超,吴怀谷. 现代计算机(专业版). 2015(08)
[9]图数据库在网络优化系统中的应用[J]. 席瀚英. 电信技术. 2014(09)
硕士论文
[1]基于Neo4j的人员关联分析与吸毒倾向预测平台的设计[D]. 祁烁.山东大学 2019
[2]基于Neo4j图数据库构建中学语文诗词知识图谱[D]. 冯俐.陕西师范大学 2019
[3]基于Neo4j的煤矿领域知识图谱构建及查询方法研究[D]. 叶帅.中国矿业大学 2019
[4]基于SEF框架的代码生成工具的设计与实现[D]. 赵丽娜.山东大学 2018
[5]基于Spark平台支持空间数据管理的图计算框架的研究[D]. 王昌圆.山东大学 2018
[6]基于Spark的子图匹配算法研究与实现[D]. 郭腾.北京交通大学 2017
[7]基于Spark的社会网络分析系统的设计与实现[D]. 崔印昌.北京邮电大学 2017
[8]基于MapReduce的图数据库频繁子图挖掘[D]. 王凯.华中科技大学 2016
[9]基于NOSQL数据库的路网最短路径查询及优化研究[D]. 于海鹏.北京工业大学 2016
[10]基于Neo4j的大数据组织检索研究与应用[D]. 陆鹏.东南大学 2015
本文编号:3128240
本文链接:https://www.wllwen.com/kejilunwen/shengwushengchang/3128240.html
最近更新
教材专著