浅谈一下Neo4J与传统的SQL数据库

234 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第2天,点击查看活动详情

引言

有一个老项目之前DAO层是采取Orcal数据库来存储的(什么?你问我Orcal是什么?大家都用过MySQL吧,Orcal则是一个大型的,安全的,企业级的数据库,而而Mysql是中小型的关系型数据库)

采用这种关系型的SQL数据库,看上去是关系分明,但是因为业务的增长与扩宽,数据库不断地修改等等一系列原因,最终这关系型数据库反而不能快速的反馈给使用者一个结果-----即:查询一些数据或者一些关系的时候,要写一个极其复杂的SQL,这不利于使用与维护。

所以新的DAO层采取了一种新型的NoSQL数据库,图数据库------Neo4J

Neo4J的介绍

Neo4j的是世界领先的开源图形数据库。 它完全由使用Java语言通过新技术的发展。

Neo4j的是 -

  • 一个开源
  • Schema的自由
  • 没有SQL
  • 图形数据库

图形数据库也被称为图形数据库管理系统或GDBMS。

Neo4j的官方网站:www.neo4j.org

图数据库是在图形结构的形式存储数据的数据库。 它存储在节点,关系和属性方面我们的应用程序的数据。 就像在表的“行,列”的形式的RDBMS存储数据,GDBMS在“图”的形式存储数据。

在很多项目中,Neo4J往往能发挥奇效。

作为图数据库,他能快速的,高效的,建立各个节点,标签间的关系,便于使用者去查询,维护。

下载和在Springboot下的配置可以参考这个NEO4J的下载配置和在springboot下的整合 - 掘金 (juejin.cn)

一些简单的代码的实操

Neo4j的springboot的简单实现 - 掘金 (juejin.cn)

最后看一下图数据库的优势吧。

image.png