知识图谱实战(二):Neo4j 构建与导入(完整代码)

《知识图谱(一)数据采集》产出了三元组 CSV,这篇把它变成真正的"图":安装 Neo4j 图数据库、用 Cypher 建节点和关系、把 triples.csv 批量导入、浏览器里可视化。照做就能看到一张能查询的知识图谱。

前言

三元组(华为 - 创始人 - 任正非)存在 Excel 里只是表格,存进图数据库才是知识图谱。图数据库专门为"实体+关系"设计:查询"和华为直接相关的所有实体"“任正非和贵州有什么关系"这类问题,一条 Cypher 就出来,比关系型数据库 JOIN 快得多、直观得多。

Neo4j 是使用最广的开源图数据库,这篇从安装到导入到可视化全走一遍。

图片

一、Neo4j 是什么(先建立概念)

| 概念

|

图数据库

|

关系型数据库(MySQL)

存储

|

节点(实体)+ 关系(边)

|

表 + 行

| |

查询

|

Cypher(MATCH 模式匹配)

|

SQL(JOIN)

| |

擅长

|

关系密集型查询(人脉、供应链、图谱)

|

事务、报表

| |

适合

|

知识图谱、社交网络、推荐

|

订单、账务

|

图数据三要素:节点(Node)关系(Relationship)属性(Property)。关系有方向(华为 → 创始人 → 任正非),这是图的核心。

图片

二、安装与启动(两种方式)

方式一:Docker(推荐,一条命令)

<span leaf=""><span>:: 需先装 Docker Desktop(见 《Docker 容器化实战》)</span></span>

方式二:Windows 直接运行

  1. Neo4j 官网下载 Community 版 zip,解压到 D:\neo4j(路径别带中文);

  2. 管理员终端进入 D:\neo4j\bin,执行 neo4j.bat console 启动;

  3. 首次启动后浏览器打开 http://localhost:7474,默认账号 neo4j,首次登录必须改密码。

启动成功的标志:浏览器能打开 Neo4j Browser(可以执行 Cypher 的界面)。端口说明:7474 是浏览器界面,7687 是程序连接(bolt)端口

三、Cypher 手动建图(先理解语法)

在 Neo4j Browser 的输入框逐条执行:

<span leaf=""><span>// 1. 建两个节点(MERGE:不存在才建,重复执行不报错)</span></span>

CREATE 无条件新建(会重复);MERGE 去重(推荐)。第三条查询执行后,浏览器右侧会出现可视化图谱:两个圆点一条箭头。

四、批量导入三元组(完整代码)

用 Python 驱动把 《知识图谱(一)数据采集》生成的 triples.csv 批量导入:

<span leaf=""><span>pip</span>&nbsp;install neo4j</span>
<span leaf=""><span># import_kg.py — 读取 triples.csv 批量导入 Neo4j(完整可运行)</span></span>

运行验证python import_kg.py,期望逐条打印"导入: …",结束时提示完成;浏览器 Neo4j Browser 里执行 MATCH (n) RETURN n LIMIT 50,能看到节点和连线组成的图谱——这就是你采集数据构建出来的知识图谱。

五、可视化与基础查询

Neo4j Browser 自带可视化,常用验证查询:

<span leaf="">// 全部实体和关系(数据多时加 LIMIT)</span>

图谱一眼能看出:哪些实体是"枢纽”(连接的边多),哪些关系类型最多——论文/汇报里截图就是很好的配图。

六、常见坑

| 坑

|

解决

浏览器打不开 7474

|

Docker 方式确认容器在跑(docker ps);zip 方式确认 neo4j.bat console 窗口没关

| |

登录被拒

|

首次登录必须改默认密码;Docker 方式密码在 NEO4J_AUTH 里定义

| |

导入报认证错

| AUTH

 里的密码要和浏览器登录的一致

| |

节点重复建

|

用 MERGE 别用 CREATE;实体名做归一化(《知识图谱(一)数据采集》)

| |

关系方向反了

|

三元组顺序 (head→tail) 与 Cypher -> 方向对应,导入代码里已固定

|

七、总结

  • 一句话:Neo4j 把三元组变成节点和关系,浏览器就能看到、Cypher 就能查

  • 到这一步,“采集 → 构建"已完成,下一篇《知识图谱(三):图查询调用与 GraphRAG》讲怎么把图谱用起来(API 调用 + 和 LLM 结合);

  • 接单角度:企业图谱项目(人事/供应链/文档)都落在"Neo4j 建图 + 查询"上,这篇就是建图的标准流程。

觉得有用点个赞收藏,下一篇见。