neo4j数据库是图数据库的一种,属于nosql的一种,常见的nosql数据库还有redis、memcached、mongDB等,不同于传统的关系型数据库,nosql数据也有其独特之处,例如图数据库,在处理对象(在图数据库中称为节点)之间的关系的能力要远高于传统的关系型数据库。
作为非关系型数据库中的图数据库,neo4j的使用较为广泛,neo4j有如下优势
1、其底层结构由点(Vertex),边(Edge)构成,点和边上都可以放属性。可以通过某一个已知的点,根据指定关系(边)迅速找到关联的多层数据。(当我们要用关系型数据库,如mysql做这一操作时,若关联维度较多,三层,四层乃至更多,或者表数据较多时,Join操作的性能会很低)
2、非结构化数据存储方式,可以根据实际场景即时设计新的实体和关系,对原来的结构无影响
3、支持事物
4、数据备份,数据恢复导入安全
5、安装操作简单,其查询cypher语句设计易懂
下面进入正题,如何在树莓派4B上安装neo4j数据库呢?
首先,neo4j是用java程序开发的,所以必须要有java的运行环境也就是jvm,而且要求java的版本不低于java8.
如果没有安装java环境,需先安装好java环境再进行下面的步骤
java -version
通过上面的命令可以查看java的版本。
1、下载附件(来源http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html),如果嫌太慢,直接百度搜jdk-8u152-linux-arm32-vfp-hflt.tar.gz,在CSDN中下载。这里特别注意,树莓派4B的Raspbian系统是32位的,所以一定要选择arm32的JDK安装包,本人亲测64位会报错,查看java -version时可以看出来。
2、执行tar zxvf jdk-8u152-linux-arm32-vfp-hflt.tar.gz -C /usr/local/java ,可以解压到指定目录下,一般放在/usr/local/java目录下,如果没有Java文件,就需要手动创建:mkdir /usr/local/java,如果权限不够,就进入root权限:sudo su,然后执行即可。
3、执行 sudo nano /etc/profile,对配置文件进行编辑,ctrl+O保存,ctrl+X退出。
4、文件末尾 加上如下:
JAVA_HOME=/usr/local/java/jdk1.8.0_152
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
5、关闭文件后,执行source /etc/profile,目的是让配置文件生效。
6、输入java -version测试,如果没有看到对应的版本信息,则重启后再次输入java -version测试,如出现相应信息,表示安装成功。
Neo4j官网地址:https://neo4j.com/download-center/#community,选择Debian对应的版本,进入后安装对应的代码指令执行即可安装最新版本的Neo4j数据库了。
1.
首先,我们将存储库密钥添加到您的钥匙串中。
wget -O - https://debian.neo4j.org/neotechnology.gpg.key | sudo apt-key add -
2. 然后将存储库添加到apt源列表中。
echo 'deb https://debian.neo4j.org/repo stable/' | sudo tee /etc/apt/sources.list.d/neo4j.list
3. 更新软件列表
sudo apt-get update
4、安装neo4j
sudo apt-get install neo4j
5. 启动neo4j
neo4j start
6. 停止neo4j的服务
sudo service neo4j stop (neo4j stop也可以)
7. 重启neo4j的服务
sudo service neo4j restart
安装完成之后可以访问:http://localhost:7474/browser/
将localhost替换成对应的ip就可访问neo4j客户端,用户名和密码默都是neo4j,并且可自行修改。
1、创建节点
create(n:emp{id:"e001", name:"张三"})
create(n:dept{id:"d001", name:"技术部"})
语法:CREATE (
其中
create(n:emp{id:"e001", name:"张三"})
create(n:dept{id:"d001", name:"技术部"})
以上两个语句,分别创建了 emp “张三” 和 dept "技术部"。
2、创建关系
match (n:emp{id:"e001"}),(m:dept{id:"d001"}) create (n)-[r:serving{job:"leader",date:"2008-10-10"}]->(m)
语法:CREATE (
关系基于节点,先有节点才能创建对应关系,执行语句
match (n:emp{id:"e001"}),(m:dept{id:"d001"}) create (n)-[r:serving{job:"leader",date:"2008-10-10"}]->(m)
以上语句,先match(查询匹配)到 id为 “e001”的 emp类型节点和 id为 “d001”的dept节点,再创建两节点之间的关系类型serving,该关系有属性 job和date。
3、查询语句
match (n:emp{id:"e001"}),(m:dept{id:"d001"}) return n,m
以上语句,先match(查询匹配)到 id为 “e001”的 emp类型节点和 id为 “d001”的dept节点,再将查询节点展示出来(neo4j官方界面中,只要查出了节点,节点间的关系也会自动展示出来)
以上就是树莓派4B如何安装Neo4j图形数据库的全部过程,其中涉及到了JDK1.8的安装、Neo4j的安装,如有问题可留言沟通!