关于neo4j的嵌入式和驱动包模式该如何选择,还请解惑
看了网上的一些资料和Neo4j权威指南这本书。与图遍历相关的介绍都是基于嵌入式模式下的java Api。但是个人觉得在实际的项目中,嵌入式的模式,代码必须放在数据库所在服务器上,且服务器的启停操作都在代码里,局限性有点大。因此选择了驱动包模式,以jdbc的方式连接neo4j数据库。遇到了一些疑惑:
1.使用驱动包模式开发是否就只能用cypher语句(或者结合apoc)来进行图的遍历。
2.驱动包模式查询结果返回的是一个ResultSet对象,是否需要自己手动创建node,path等实体类
3.关于嵌入式,是不是我的理解有误。感觉局限性太大。如果我要远程操作neo4j数据库,是不是可以通过将neo4j所在服务器上的相关接口发布dubbo服务来实现。
4.实际项目中用到neo4j数据库,嵌入式和驱动包模式究竟该如何选择?
回答一
唯一需要使用嵌入模式(embedded)的情况,是你的应用在图数据库引擎之上实现专门的数据处理功能、并作为一个整体产品运行/销售,例如一个用户权限管理软件使用Neo4j嵌入式数据库作为用户角色和资源的数据存储。嵌入式的数据库是无法被其他外部客户应用访问的。
作为客户端应用,首推Neo4j的官方驱动:Java, Javascript, .Net和Python,它们对查询结果的读取都做了很好地封装。JDBC方式只是为习惯于关系数据库开发的技术人员提供的。客户端应用应该通过bolt协议访问数据库,提交Cypher查询,并处理结果。
请参考Neo4j官方网站上的例子:https://neo4j.com/developer/language-guides/
回答二
1.是的,驱动包开发模式就像 jdbc操作关系数据库,要在程序里发送指令(cyher语句)到neo4j并处理返回的结果
2.驱动包开发模式下 运行cypher指令(create )来创建节点 关系 属性等
3.是的,嵌入式开发模式要在服务器上运行直接操作neo4j数据文件,并且必须先关闭neo4j才行
4.应用级别都是用驱动包开发模式,你的项目就是应用级别的。 嵌入式开发模式一般专业数据处理人员想要自己操作图数据用到
关于neo4j的嵌入式和驱动包模式该如何选择,还请解惑的更多相关文章
- Linux开源模块迁移概述暨交叉编译跨平台移植总结--从《嵌入式Linux驱动模板简洁和工程实践》
本文摘录<嵌入式Linux驱动模板简洁和工程实践>一本书"开发和调试技术". Linux强大的是,有那么多的开源项目可以使用.通常非常需要可以通过寻找相关的源模块被定义 ...
- c3p0、dbcp、tomcat jdbc pool 连接池配置简介及常用数据库的driverClass和驱动包
[-] DBCP连接池配置 dbcp jar包 c3p0连接池配置 c3p0 jar包 jdbc-pool连接池配置 jdbc-pool jar包 常用数据库的driverClass和jdbcUrl ...
- Spring Batch远程分区的本地Jar包模式
1 前言 欢迎访问南瓜慢说 www.pkslow.com获取更多精彩文章! Spring相关文章:Springboot-Cloud Spring Batch远程分区对于大量数据的处理非常擅长,它的实现 ...
- 嵌入式Linux驱动开发日记
嵌入式Linux驱动开发日记 主机硬件环境 开发机:虚拟机Ubuntu12.04 内存: 1G 硬盘:80GB 目标板硬件环境 CPU: SP5V210 (开发板:QT210) SDRAM: 512M ...
- 嵌入式linux驱动开发之给linux系统添加温度传感器模块
忙了几天,终于可以让ds18b20在自己的开发板的linux系统上跑了!虽然ds18b20不是什么新鲜玩意,但是想想知己可以给linux系统添加模块了还是有点小鸡冻呢! 虽然说现在硬件的资源非常丰富而 ...
- [Windows驱动]驱动包(Driver Packages)
在windows下安装一个驱动,我们你需要把所有需要的软件打包-称为驱动包.驱动包里包括系统提供的给所有设备类使用的一般安装工具,还包括了设备商提供的设备特定的组件.下面我们就来看看驱动包里具体需要哪 ...
- Win8驱动测试模式
打开驱动测试模式(保存成bat文件,双击执行) bcdedit /set testsigning on pause 执行完成后,看见提示操作成功的提示,之后我们重启一下,再次进入系统,在桌面的右下角会 ...
- mongodb在java驱动包下的操作(转)
推荐几章很有用的文章 java操作参考文档 http://www.cnblogs.com/hoojo/archive/2011/06/02/2068665.html http://blog.csdn. ...
- 使用Maven管理Oracle驱动包
由于Oracle授权问题,Maven3不提供Oracle JDBC driver,为了在Maven项目中应用Oracle JDBC driver,必须手动添加到本地仓库. 手动添加到本地仓库需要本地有 ...
随机推荐
- windows IIS 部署dotnetcore
1.安装windows IIS 程序 ,详细过程略. 2.下载dotnet core SDK runtime 链接地址:https://dotnet.microsoft.com/download/th ...
- 笔试中sizeof求字节数的问题
1. ]) { cout<<sizeof(ch)<<endl; //或者sizeof(ch)=?; } 这种情况,数组名作为形参,退化成指针,所以sizeof结果是4(32位编 ...
- wifi共享大师,去除弹窗广告。
1.安装WiFi共享大师 2.不要打开 3.右键打开文件所在位置 4.在任意目录新建三个空的txt,重命名为MiniNews.exe.ProLive.exe.WifiUpdate.exe 5.将上面的 ...
- java 调用区块链 发布和调用智能合约
java连接区块链 很简单 ,调用智能合约要麻烦一些. 先说连接 区块链查询数据. 1 maven 项目导入 web3j 的依赖. <dependency> <groupId> ...
- PKU--3628 Bookshelf 2(01背包)
题目http://poj.org/problem?id=3628 分析:给定一堆牛的高度,把牛叠加起来的高度超过牛棚的高度. 且是牛叠加的高度与牛棚高度之差最小. 把牛叠加的高度看作是背包的容量,利用 ...
- java连接neo4j
呼.博客要落灰了 记录一下Java连接neo4j的问题. 首先是neo4j的下载和配置,基本参考https://blog.csdn.net/appleyk/article/details/790918 ...
- spark编程入门-idea环境搭建
原文引自:http://blog.csdn.net/huanbia/article/details/69084895 1.环境准备 idea采用2017.3.1版本. 创建一个文件a.txt 2.构建 ...
- Redis List类型学习
- [转]WPF 构建无外观(Lookless)控件
构建一个用户可以使用Template属性设置外观的WPF控件需要以下几步 1.继承自System.Windows.Controls.Control 2.设置DefaultStyleKeyPropert ...
- 深入浅出 Java Concurrency (11): 锁机制 part 6 CyclicBarrier[转]
如果说CountDownLatch是一次性的,那么CyclicBarrier正好可以循环使用.它允许一组线程互相等待,直到到达某个公共屏障点 (common barrier point).所谓屏障点就 ...