Neo4j 知识讲解与在线工具使用教程
图数据库领域的核心工具 ——Neo4j,同时详细拆解其在线预览控制台(https://console-preview.neo4j.io/)的使用方法,以及查询工具(https://console-preview.neo4j.io/tools/query)的模块功能。
Neo4j 是原生图数据库,擅长处理实体间关联关系。本文介绍其核心概念如节点、关系和属性,详解 Cypher 查询语言语法。通过 Neo4j Aura 在线控制台,演示如何创建数据库实例、连接并使用 Query 工具构建唐诗知识图谱。内容涵盖编辑器、结果展示、属性面板等模块功能,提供实操练习巩固图数据库基础应用。
图数据库领域的核心工具 ——Neo4j,同时详细拆解其在线预览控制台(https://console-preview.neo4j.io/)的使用方法,以及查询工具(https://console-preview.neo4j.io/tools/query)的模块功能。
在使用工具前,我们需要先理解 Neo4j 的本质和核心概念,这是后续操作的基础。
Neo4j 是世界上最流行的原生图数据库(Native Graph Database),专门用于存储、查询和分析'实体之间的关联关系'。它与我们熟悉的 MySQL 等关系型数据库的核心差异的是:
Neo4j 的核心优势:
Neo4j 的数据模型由 3 个核心组件构成,所有操作都围绕这三者展开:
| 组件 | 定义 | 示例(知识图谱场景) |
|---|---|---|
| 节点(Node) | 代表'实体',是数据的核心载体,可给节点贴'标签'(类似分类) | 标签为「人物」的节点(姓名:李白);标签为「诗歌」的节点(标题:静夜思) |
| 关系(Relationship) | 连接两个节点,代表实体间的关联,有方向、有类型 | 「李白」→[创作]→「静夜思」(方向:从作者到作品;类型:创作) |
| 属性(Property) | 描述节点或关系的具体信息,以'键值对'(key-value)形式存储 | 节点「李白」的属性:{时代:唐代,籍贯:陇西};关系「创作」的属性:{年份:730} |
Cypher 是 Neo4j 专属的查询语言,语法类似英语,直观易懂。核心语法规则:
() 表示,标签用 : 开头(如 (p:Person) 表示'标签为 Person 的节点');[] 表示,类型用 : 开头(如 -[r:创作]-> 表示'方向向右、类型为「创作」的关系');{key: value} 表示(如 (p:Person {name: "李白", age: 42}))。常用示例:
CREATE (p:Person {name: "李白" })-[r:创作]->(po:Poem {title: "静夜思"});MATCH (p:Person)-[r:创作]->(po:Poem) RETURN p.name, po.title(查询所有作者及其创作的诗歌);MATCH (p:Person {name: "李白"}) SET p.时代 = "唐代";MATCH (po:Poem {title: "静夜思"}) DELETE po(需先删除关联关系,否则报错)。Neo4j Aura 是 Neo4j 提供的托管式图数据库服务(无需本地安装,直接在线使用),而 https://console-preview.neo4j.io/ 是其预览版控制台,适合新手快速上手。
https://console-preview.neo4j.io/;在线控制台需要先创建数据库,才能存储节点和关系:
创建完成后,需连接数据库才能操作:
https://console-preview.neo4j.io/tools/query(查询工具页面)。在查询工具页面,我们可以通过 Cypher 语句创建、查询、修改数据:
// 1. 创建作者节点 CREATE (p1:Person {name: "李白", 时代: "唐代", 籍贯: "陇西"}), (p2:Person {name: "杜甫", 时代: "唐代", 籍贯: "河南"});
// 2. 创建诗歌节点 CREATE (po1:Poem {title: "静夜思", 体裁: "五言绝句"}), (po2:Poem {title: "望岳", 体裁: "五言古诗"});
// 3. 创建关联关系 MATCH (p:Person), (po:Poem) WHERE p.name = "李白" AND po.title = "静夜思" CREATE (p)-[r:创作 {年份: 730}]->(po);
MATCH (p:Person), (po:Poem) WHERE p.name = "杜甫" AND po.title = "望岳" CREATE (p)-[r:创作 {年份: 735}]->(po);
// 查询所有作者及其创作的诗歌 MATCH (p:Person)-[r:创作]->(po:Poem) RETURN p.name, r.年份,po.title, po.体裁;
https://console-preview.neo4j.io/tools/query 是 Neo4j Aura 的核心查询工具,界面分为 6 个关键模块,每个模块都有明确的功能定位,我们逐一拆解:
MATCH、CREATE)、节点 / 关系标签会用不同颜色标注,避免语法错误;(p: 时,会自动提示已存在的节点标签(如 Person),提高编写效率;// 标注单行注释,/* */ 标注多行注释,方便备注语句功能。Person 标签为蓝色,Poem 标签为绿色),可拖拽节点调整位置,双击节点 / 关系可查看详细属性;Person)和所有属性(name: 李白、时代:唐代 等);李白 的 年龄 属性改为 45),修改后点击「Save」保存。CREATE 语句创建 3 个节点(标签:Book,属性:title(书名)、author(作者)、year(出版年份));-[r:推荐]-> 表示'推荐'关系,属性:reason(推荐理由));MATCH 语句查询'所有被推荐的书籍及其推荐理由';
微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
在线格式化和美化您的 SQL 查询(它支持各种 SQL 方言)。 在线工具,SQL 美化和格式化在线工具,online
解析 INSERT 等受限 SQL,导出为 CSV、JSON、XML、YAML、HTML 表格(见页内语法说明)。 在线工具,SQL转CSV/JSON/XML在线工具,online
CSV 与 JSON/XML/HTML/TSV/SQL 等互转,单页多 Tab。 在线工具,CSV 工具包在线工具,online