一、前言
随着社交、电商、金融等行业的发展,现实社会的关系构成了一张复杂而庞大的关系网。传统数据库在处理关系运算时往往面临算力瓶颈,即便引入大数据技术,随着数据量增长,多表关联查询的性能也会急剧下降。因此,支持海量数据关系计算的图数据库应运而生。
二、图数据库 Neo4j 介绍
2.1 什么是图数据库
图数据库(Graph Database)是一种专门用于存储和查询图结构数据的数据库。它不同于传统的关系型数据库(如 MySQL、Oracle,用表和列存储数据)和 NoSQL 数据库(如 MongoDB,用文档存储数据),而是通过节点(Node)、关系(Relationship)和属性(Property)来直接表达数据间的连接。
2.2 Neo4j 是什么
Neo4j 是目前最流行的开源图数据库之一,采用原生图存储引擎,能够高效地处理深度关联查询。
2.3 Neo4j 特点与功能
2.3.1 Neo4j 核心特点
原生存储、高性能遍历、灵活的模式设计。
2.3.2 Neo4j 核心功能
支持 Cypher 查询语言,提供丰富的图算法库。
三、环境准备
3.1 Neo4j 服务搭建过程
推荐使用 Docker 快速部署。
3.1.1 下载镜像
拉取官方镜像:docker pull neo4j:latest
3.1.2 创建目录
准备持久化数据目录,例如 /data/neo4j。
3.1.3 启动容器
执行命令:
docker run --name neo4j -d \
-p 7474:7474 -p 7687:7687 \
-v /data/neo4j/data:/data \
-e NEO4J_AUTH=neo4j/password \
neo4j:latest
注意端口映射,7474 为 Web 界面,7687 为 Bolt 协议端口。
3.1.4 访问 neo4j web 界面
浏览器打开 http://localhost:7474,使用默认账号登录。
四、SpringBoot 整合 Neo4j
4.1 前置准备
4.1.1 版本选择
Spring Boot 2.x 及以上版本均支持 Spring Data Neo4j。
4.1.2 导入依赖
在 pom.xml 中添加以下依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-neo4j</artifactId>
</>


