在Django中使用Neo4j

时间:2022-02-22 03:45:54

重要的先说在前面吧,最后的选型结构是安装了最新的neo4j版本3.0.3,使用了neo4j-rest-client客户端库。主要原因是更适用于django的neomodel库目前只支持neo4j2.2.

来自官方的文档--Using Neo4j from Python:https://neo4j.com/developer/python/   这篇官方文档为Django开发推荐NeoModel(http://neomodel.readthedocs.io/en/latest/)。另外这个文档的末尾有多篇推荐阅读,会列在最后:

neo4j在debian系上的安装:http://debian.neo4j.org/?_ga=1.23681983.403762323.1467875632

安装命令可能遇到以下错误:

  1. The following packages have unmet dependencies:
  2. neo4j : Depends: java8-runtime but it is not installable or
  3. j2re1.8 but it is not installable
  4. E: Unable to correct problems, you have held broken packages.

采用以下命令解决以上问题:

  1. sudo add-apt-repository ppa:webupd8team/java
  2. sudo apt-get update
  3. sudo apt-get install oracle-java8-installer

上面是安装官方JDK,也可以安装OpenJDK:

  1. sudo add-apt-repository ppa:openjdk-r/ppa
  2. sudo apt-get update
  3. sudo apt-get install openjdk-8-jdk
  4. sudo update-alternatives --config java
  5. sudo update-alternatives --config javac

安装以后启动失败提示:

  1. Setting up neo4j (2.2.10) ...
  2. System start/stop links for /etc/init.d/neo4j-service already exist.
  3. Starting Neo4j Server...WARNING: not changing user
  4. process [6234]... waiting for server to be ready.. Failed to start within 120 seconds.
  5. Neo4j Server may have failed to start, please check the logs.

*(http://*.com/questions/28995662/what-does-warning-not-changing-user-mean-in-neo4j)提示

  1. sudo su

切换成root用户做操作就Ok了。

安装时出现问题如下:

  1. The following actions will resolve these dependencies:
  2. Keep the following packages at their current version:
  3. 1)     neo4j [Not Installed]
  4. 2)     oracle-java9-installer [Not Installed]

可以把安装指令改为

  1. apt-get -f install neo4j

Neo4j官方文档入口:

http://neo4j.com/docs/

The Neo4j Manual v2.2.10:http://neo4j.com/docs/2.2.10/
Neo4j Cypher Refcard 2.2.10:http://neo4j.com/docs/2.2.10/cypher-refcard/
Neo4j Bolt Driver for Python:http://neo4j.com/docs/api/python-driver/current/
The Neo4j JavaDeveloper Reference v3.0:http://neo4j.com/docs/Java-reference/current/
The Neo4j REST API documentation v3.0:http://neo4j.com/docs/rest-docs/current/
Neo4j OGM - An Object Graph Mapping Library for Neo4j:http://neo4j.com/docs/ogm-manual/current/
The Neo4j Operations Manual v3.0:http://neo4j.com/docs/operations-manual/current/
Neo4j Cypher Refcard 3.0.3:http://neo4j.com/docs/cypher-refcard/current/
Neo4jBooks:https://neo4j.com/books/

官方文档Using Neo4j from Python的推荐阅读:

Using Neo4j from Python
Using Neo4j from Kivy
A script to automatically migrate relational databases to Neo4J
Py2neo Spatial
Holger Spill: An introduction to Python and graph databases with Neo4j
Python NLTK/Neo4j: Analysing the transcripts of How I Met Your Mother
Flask and Neo4j
Using Jupyter and Neo4j with Docker
Neo4j Jupyter Visualization Notebook

一些中文参考资料:

图形数据库 Neo4j 开发实战:http://www.ibm.com/developerworks/cn/java/j-lo-neo4j/index.html
neo4j使用指南(官方文档概要):http://blog.csdn.NET/gtuu0123/article/details/6384375
图形数据库、NOSQL和Neo4j:http://www.infoq.com/cn/articles/graph-nosql-neo4j
图数据库实践系列:http://www.linuxidc.com/Linux/2013-08/88766.htm
spring Data Neo4j简介:http://www.infoq.com/cn/news/2013/11/spring-data-neo4j-intro
Neo4J High Availability 设置向导:http://www.68idc.cn/help/mobilesys/J2ME/20150730468082.html

Neo4j集群安装实践:http://blog.fens.me/nosql-neo4j-intro/

参考资料:https://github.com/neo4j/neo4j/issues/7031

http://www.webupd8.org/2012/09/install-Oracle-java-8-in-ubuntu-via-ppa.html

在Django中使用Neo4j的更多相关文章

  1. 在django中使用django_debug_toolbar进行日志记录

    一.概述 django_debug_toolbar 是django的第三方工具包,给django扩展了调试功能. 包括查看执行的sql语句,db查询次数,request,headers,调试概览等.  ...

  2. 在django中使用django_debug_toolbar

    一.概述 django_debug_toolbar 是django的第三方工具包,给django扩展了调试功能. 包括查看执行的sql语句,db查询次数,request,headers,调试概览等. ...

  3. 异步任务队列Celery在Django中的使用

    前段时间在Django Web平台开发中,碰到一些请求执行的任务时间较长(几分钟),为了加快用户的响应时间,因此决定采用异步任务的方式在后台执行这些任务.在同事的指引下接触了Celery这个异步任务队 ...

  4. Mysql事务探索及其在Django中的实践(二)

    继上一篇<Mysql事务探索及其在Django中的实践(一)>交代完问题的背景和Mysql事务基础后,这一篇主要想介绍一下事务在Django中的使用以及实际应用给我们带来的效率提升. 首先 ...

  5. Mysql事务探索及其在Django中的实践(一)

    前言 很早就有想开始写博客的想法,一方面是对自己近期所学知识的一些总结.沉淀,方便以后对过去的知识进行梳理.追溯,一方面也希望能通过博客来认识更多相同技术圈的朋友.所幸近期通过了博客园的申请,那么今天 ...

  6. Django 中url补充以及模板继承

    Django中的URL补充 默认值 在url写路由关系的时候可以传递默认参数,如下: url(r'^index/', views.index,{"name":"root& ...

  7. django中css问题

    django中加载的css,js,图片其中js和图片可以加载出来,而css没有效果.原因如下: 这是因为你安装的某些IDE 或者其他更改了注册表导致的系统的注册表\HKEY_CLASSES_ROOT\ ...

  8. 在Django中进行注册用户的邮件确认

    之前利用Flask写博客时(http://hbnnlove.sinaapp.com),我对注册模块的逻辑设计很简单,就是用户填写注册表单,然后提交,数据库会更新User表中的数据,字段主要有用户名,哈 ...

  9. django中tinymce添加图片上传功能

    主要参考以下: https://pixabay.com/en/blog/posts/direct-image-uploads-in-tinymce-4-42/ http://blog.csdn.net ...

随机推荐

  1. textarea 限制字数

    $("textarea").keyup(function(){        //console.log($(this).val().length);        var L=$ ...

  2. &quot&semi;Programming&quot&semi;和&quot&semi;Programming&quot&semi;是同一个&quot&semi;Programming&quot&semi;吗?

    什么意思? C语言没有专门的字符串类型,但是,它同样可以处理字符串.本文不是讨论字符串的使用,而是讨论C字符串之间的关系.如题,在C语言代码中,如果定义#define STR = "Prog ...

  3. &period;c 文件取为&period;o文件

    $(xxx:%.c=%.o) 即可 例子: $(ALLFILES:%.c=%.o)

  4. AES算法简介

    AES算法简介 一. AES的结构 1.总体结构 明文分组的长度为128位即16字节,密钥长度可以为16,24或者32字节(128,192,256位).根据密钥的长度,算法被称为AES-128,AES ...

  5. ASP&period;NET Core 2&period;0 支付宝当面付之扫码支付

    前言 自从微软更换了CEO以后,微软的战略方向有了相当大的变化,不再是那么封闭,开源了许多东西,拥抱开源社区,.NET实现跨平台,收购xamarin并免费提供给开发者等等.我本人是很喜欢.net的,并 ...

  6. rexray在CentOS上不能创建ceph rbd的docker volume问题定位

    背景 我们通过docker的rexray插件来创建ceph rbd设备的docker volume,但总提示创建失败. # docker volume create --driver=rexray - ...

  7. 根据Webservice地址,动态传入参数&lpar;Webservice代理类&rpar;

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using Sunlib; ...

  8. &lbrack;转帖&rsqb;VBS 教程

    VBS教程 http://www.cnblogs.com/veggiegfei/p/5943260.html 原作者真牛B 网上找了好多 没找到 没想到整理的这么好, 转来学习一下 改天打印出来. V ...

  9. 解决idea控制台乱码及项目乱码

    如果控制台出现乱码,解决办法: 第1方案:.找到安装idea的路径下找idea文件下的bin中vmoptions文件,打开该文件,加上-Dfile.encoding=UTF-8 第二方案: 第3种方案 ...

  10. vim介绍&sol;vim颜色显示和移动光标&sol; vim一般模式下移动光标&sol; vim一般模式下复制、剪切和粘贴

    5.1 vim介绍 5.2 vim颜色显示和移动光标 5.3 vim一般模式下移动光标 5.4 vim一般模式下复制.剪切和粘贴 vim   是vi的升级版本 vim 带有颜色显示 安装vim : y ...