不懂Neo4j?没关系,一起学

2020-05-28 00:00:00 数据库 都是 节点 是一个 图形


  • Neo4j是什么

  • 为什么要用Neo4j

  • 什么场景使用

  • 怎么安装

一、Neo4j是什么

首先我们要了解下什么是Neo4j。Neo4j是一个高性能的、NoSQL图形数据库,它将结构化数据存储在网络上而不是表中。它是一个嵌入式的、基于磁盘的、具备完全的事务特性的Java持久化引擎,但是它将结构化数据存储在网络(从数学角度叫做图)上而不是表中。Neo4j也可以被看作是一个高性能的图引擎,该引擎具有成熟数据库的所有特性。

程序员工作在一个面向对象的、灵活的网络结构下而不是严格、静态的表中——但是他们可以享受到具备完全的事务特性、企业级的数据库的所有好处。

上面的介绍比较正式,看了好像有点懵。其实,简单的说,Neo4j就是一个存储节点和边的图数据库,就类似树形结构一样,根节点—>子节点—>子节点。

二、为什么要用Neo4j

用MySQL存储的好好的,为啥要用Neo4j,相信很多人都有这个疑惑。

首先,正如上面所介绍的,Neo4j是一个NoSQL图形数据库。作为一个图形数据库,Neo4j具有以下优点:

  • 灵活。不管有什么新的数据需要存储,Neo4j都是一律的节点和边,只需要考虑节点属性和边属性。但是在MySQL中存储的话需要很多表,并且表之间需要做join操作。

  • 语句简单。相比SQL语句,CQL简单很多(CQL是什么?CQL代表Cypher查询语言,Neo4j将CQL作为查询语言,就像MySQL和SQL的关系一样)

  • 数据库操作的速度并不会随着数据库的增大有明显的降低。这得益于Neo4j特殊的数据存储结构和专门优化的图算法。

三、什么场景使用

欺诈检测

通过图分析可以清楚地知道洗钱网络及相关嫌疑,例如对用户所使用的帐号、发生交易时的IP地址、MAC地址、手机IMEI号等进行关联分析。

推荐系统

比如你在淘宝上浏览了Thinkpad T480,它就在下面的猜你喜欢,推荐你Thinkpad E430,Thinkpad T580。

社交网络图

社区聚类分析,朋友朋友推荐(就像使用QQ的时候,王姨和你有32个共同好友),社交电商里面的绑定关系。

身份和访问管理

使用图形数据库进行身份和访问管理时,可以快速有效地跟踪用户,资产,关系和授权。

当然,使用场景远远不止这些,具体还要根据特定场景来判断。

四、怎么安装

这里以Linux安装为例:

1.下载社区版Neo4j(目前官网新版:3.5.14)

可以官网下载,也可以在我网盘分享的链接下载(链接:https://pan.baidu.com/s/17wIpZuIwTras4HHdPh1uOQ  提取码:rc6e),官网下载是真的慢,所有就分享到网盘了。

2.解压

  1. tar -zxvf neo4j-community-3.5.14-unix.tar.gz

3.开启远程访问

编辑neo4j配置文件

  1. vim neo4j-community-3.5.14/conf/neo4j.conf

  2. dbms.connectors.default_listen_address=0.0.0.0 前面的注释去掉

4.启动

进入neo4j的bin目录,./neo4j start,看到以下信息,则说明启动成功了。

如果不信的话,咱可以登陆控制台看下:http://IP:7474,默认用户名和密码都是 neo4j。

输入完用户名密码,点击 Connect后,可以看到下面界面,是一个修改密码的界面。

这样,neo4j 就安装ok了!





相关文章