前言
第一次听到Neo4j,是在前天,我接到了一个task,自己造一个Neo4j的服务,并用docker搭建一个Neo4j的服务器。这两天学习了一下Neo4j,本来不打算写Neo4j的博客了,造完服务就算了,但是越是到后面,越是觉得自己对Neo4j中的一些概念理解的不够透彻,从而直接影响了我的进度,我有了很多的疑惑。“理论支撑实践”,果然是至理名言,就像当年读书的时候,老师反反复复强调数据结构等一系列理论课很重要是一样的道理。遂此刻,回头整理知识点,还是那句话,温故而知新,每一次的重新阅读,都会有不一样的收获。
简介
作为一款强健的,可伸缩的高性能数据库,Neo4j最适合完整的企业部署或者用于一个轻量级项目中完整服务器的一个子集存在。
它包括如下几个显著特点:
1.完整的ACID支持
2.高可用性
3.轻易扩展到上亿级别的节点和关系
4.通过遍历工具高速检索数据
适当的ACID操作是保证数据一致性的基础。Neo4j确保了在一个事务里面的多个操作同时发生,保证数据一致性。不管是采用嵌入模式还是多服务器集群部署,都支持这一特性。
可靠的图型存储可以非常轻松的集成到任何一个应用中。随着我们开发的应用在运营中不断发展,性能问题肯定会逐步凸显出来,而Neo4j不管应用如何变化,他只会受到计算机硬件性能的影响,不受业务本身的约束。部署一个neo4j服务器便可以承载上亿级的节点和关系。当然,当单节点无法承载我们的数据需求时,我们可以进行分布式集群部署。将图数据库用于存储关系复杂的数据是他最大的优势。通过Neo4j提供的遍历工具,可以非常高效的进行数据检索&#x