neo4j 数据库是一个高性能的 NoSQL 图形数据库。它的存储结构非常类似于数学中的图,以结点和结点之间的关系为存储的基本内容。neo4j 中的图指的是有向图,所有的关系都必须是有方向的,如果试图创建没有方向的关系会失败。它非常适合存储关系错综复杂的数据,如知识图谱、人脉网等。neo4j 中没有分库分表的概念,所有结点和关系都存在一个库中。由于没有表结构,因此它非常适合存储半结构化数据,扩展性极好。
neo4j 名字的来源应该是《黑客帝国》中的尼奥(neo),因为在它的管理界面有个教程演示就是创建《黑客帝国》的图谱。4j 则是指为 Java 而生,和 log4j 等一众 4j 结尾的软件一样。
安装
neo4j 的官网地址为:https://neo4j.com/,但访问十分缓慢。neo4j 数据库不需要进行安装,直接运行软件包中的 bin/neo4j.bat 文件即可使用。但是官网的下载速度过于缓慢,下载一个压缩包需要好几个小时,就算是迅雷加速也没用,而且最新版的 neo4j 只支持 Java11 以上的版本,所以不推荐使用这种方式运行。本人推荐在 docker 中安装运行 neo4j(最好配置国内镜像源)命令如下:
docker pull neo4j
docker run -it -d -p 7474:7474 -p 7687:7687 neo4j
安装完成后,访问 http://localhost:7474 即可看到 neo4j 的登录界面。如果部署在服务器上,需要同时放通 7474 和 7687 两个端口,只放通 7474 会出现登录失败的情况。默认用户名和密码都是 neo4j。
CQL
neo4j 使用 CQL(Cypher Query Language)检索数据。具体的教程可以在 w3cschool 中找到:https://www.w3cschool.cn/neo4j/neo4j_cql_introduction.html 。语法和 SQL 不太一样,但也有一定相通之处,比如都有 where 语句且用法相同,而 CQL 中的 return 语句就相当于 SQL 中的 select 语句。
强大的可视化工具
neo4j 拥有强大的可视化工具,可以以图形的方式展示出各个结点和它们之间的关系,展示效果如图:
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于