快速探索图数据与图计算

图计算是研究客观世界当中的任何事物和事物之间的关系,对其进行完整的刻划、计算和分析的一门技术。图计算依赖底于底层图数据模型,在图数据模型基础上计算分析Spark是一个非常流行且成熟稳定的计算引擎。下面文章从ONgDB与Spark的集成开始【使用TensorFlow等深度学习框架分析图数据的方案不在本文的讨论范围,仅从图数据库领域探讨与Spark的集成是一个比较流行的方案,可以做一些基础图数据的计算与预训练提交给TensorFlow】,介绍一下具体集成实施方案。下载案例项目源代码可以帮助新手快速开始探索,不必踩坑。大致流程是先在Spark集群集成图数据库插件,然后使用具体API构建图数据分析代码。

在Spark集群安装neo4j-spark插件

  • 下载组件

https://github.com/ongdb-contrib/neo4j-spark-connector/releases/tag/2.4.1-M1
  • 下载组件放在spark安装目录的jars文件夹

E:\software\ongdb-spark\spark-2.4.0-bin-hadoop2.7\jars

基础组件依赖信息

  • 版本信息

Spark 2.4.0  http://archive.apache.org/dist/spark/spark-2.4.0/ONgDB 3.5.xNeo4j-Java-Driver 1.7.5Scala 2.11JDK 1.8hadoop-2.7.7https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/neo4j-spark-connector-full-2.4.1-M1 https://github.com/neo4j-contrib/neo4j-spark-connector
  • 下载的安装包

hadoop-2.7.7spark-2.4.0-bin-hadoop2.7winutilsneo4j-spark-connector-full-2.4.1-M1 【把jar包放到spark/jars文件夹里】scala-2.11.12

创建测试数据

UNWIND range(1,100) as idCREATE (p:Person {id:id}) WITH collect(p) as peopleUNWIND people as p1UNWIND range(1,10) as friendWITH p1, people[(p1.id + friend) % size(people)] as p2CREATE (p1)-[:KNOWS {years: abs(p2.id - p2.id)}]->(p2)
FOREACH (x in range(1,1000000) | CREATE (:Person {name:"name"+x, age: x%100}));
UNWIND range(1,1000000) as xMATCH (n),(m) WHERE id(n) = x AND id(m)=toInt(rand()*1000000)CREATE (n)-[:KNOWS]->(m);

备注

  • 案例项目【为了避免踩坑下面这个Java-Scala混编案例项目可以参考一下】

https://github.com/ongdb-contrib/ongdb-spark-java-scala-example

下载依赖包如果出现问题请检查下面网址是否可以正常下载Spark相关的JAR包

http://dl.bintray.com/spark-packages/maven
  • 案例项目截图【使用前在本地启动Spark】

  • 相关组件安装以及其它参考资料请阅读原文

图数据库_ONgDB图数据库与Spark的集成相关推荐

  1. 知识图:从图和数据库中获取知识

    知识图:从图和数据库中获取知识 知识图到底是什么,以及关于它们的所有炒作是什么?如果想成为世界各地的Airbnbs,Amazon,Google和LinkedIn,那么学会区分真实的炒作,定义不同类型的 ...

  2. 什么是图数据库?图数据库实践与创新浅析

    近日,中国工程院院士,清华大学计算机科学与技术系教授郑纬民先生,在人民日报发表文章<把握图数据库自主创新机遇>,建议国内科研学者和工程人员,要在图数据库的理论研究与工程研发上坚持自主创新道 ...

  3. 一个实用技巧,告别手动画图,自动生成数据库 ER 图|原创

    来自:程序通事 忙,真忙 这两个星期真是巨忙,年前有个项目因为各种莫名原因,一直拖到这个月才开始真正测试.然后上周又接到新需求,马不停蹄进入开发. 一边开发着新需求,一边改着旧项目的 Bug.再加上这 ...

  4. 异常:此数据库没有有效所有者,因此无法安装数据库关系图支持对象。

    某一天,在调试程序时突然发现,在附加数据库后,想添加关系表,结果出来了下面的错误: 此数据库没有有效所有者,因此无法安装数据库关系图支持对象.若要继续,请首先使用"数据库属性"对话 ...

  5. 一文聊“图”,从图数据库到知识图谱

    作者 | 穆琼 责编 | 晋兆雨 头图 | 付费下载于视觉中国 随着知识图谱的发展,图数据库一词被越来越多的提到.那么到底什么是图数据库,为什么要用图数据库,如何去建设一个图数据库应用系统,图数据库与 ...

  6. MSSQL从2000升级到2005丢失数据库关系图的解决方案

    MSSQL从2000升级到2005丢失数据库关系图的解决方案 今天将数据库从2000升级到2005时发现数据库关系图无法使用,错误提示信息如下:  "此数据库没有有效所有者,因此无法安装数据 ...

  7. 大数据图数据库之TAO数据库

    节选自<大数据日知录:架构与算法>十四章 14.1.2  TAO图数据库 Facebook是目前世界上最著名的社交网站,如果从数据抽象的角度来看,Facebook的社交图不仅包括好友之间的 ...

  8. 【数据库E-R图知识点和相关习题(复试真题)】

    文章目录 数据库E-R图知识点和相关习题 E-R图的前置知识 习题 工厂物资管理系统(例题) 防疫管理系统(2021) 社区隔离人员管理系统(2020A) 在线教学管理系统(2020B) 餐厅管理系统 ...

  9. 数据库ER图该怎么画

    什么是ER图 实体关系图,通过一张ER图,能够快速的了解数据库层面的表结构设计.目前做企业级应用系统,花费了大量的时间在数据库表结构的设计上,所以打算从源头梳理一下怎么样才能画好ER图,画好图是第一步 ...

最新文章

  1. python数据分析与应用
  2. boost::detail::lexical_cast_stream_traits用法的测试程序
  3. INamingContainer接口解决多个自定义控件ID冲突
  4. macOS下使用gcc编译GLUT+CPP的连接语句
  5. 一个神奇的bug:OOM?优雅终止线程?系统内存占用较高?
  6. syslog-ng客户端,服务器配置
  7. It is worth noting that among the four
  8. c语言编程 猜字游戏
  9. 项目管理常用的工具推荐——WBS、甘特图、燃尽图
  10. Python求方阵的逆矩阵与求非方阵的伪逆矩阵
  11. 易语言教程数据库删除命令
  12. C语言编程-对数字进行分类
  13. cpc金价难以琢磨 投行是否成“南郭先生”
  14. Packet Tracer 5.0建构CCNA实验攻略——帧中继Frame Relay
  15. 汉字如何应用在平面设计中
  16. Angular入门到精通系列教程(1) - Angular,Vue,React 选型
  17. 专业表操作鉴权(增、删、改、id查、全查、名字模糊查)
  18. Redis主从复制 AKF
  19. 封装 用户名.计算机,Windows系统自定义封装ISO镜像
  20. 华为2288v5服务器安装Centos7系统

热门文章

  1. 无法安装软件之解决其一 (windows installer服务篇)
  2. python面试题总结(1)--语言特性
  3. 机器学习算法之线性回归
  4. 华为手机充满有提醒吗_2020手机充电速度排名:最快21分钟充满,华为第15名
  5. 【Java】jdk 1.8 新特性——Lambda表达式
  6. VC内存对齐准则(Memory alignment)
  7. mysql raid_DBA们应该知道的RAID卡知识_MySQL
  8. 和aes相比较有哪些特点_“黑枸杞”和“红枸杞”相比较,功效方面究竟存在哪些差别?...
  9. All-In-One Code Framework [一站式示例代码库] 【转】
  10. js for in 遍历对象与数组