Neo4j 核心概念与在线控制台使用指南
图数据库领域的核心工具 ——Neo4j,同时详细拆解其在线预览控制台的使用方法,以及查询工具的模块功能。
一、Neo4j 核心知识铺垫
在使用工具前,我们需要先理解 Neo4j 的本质和核心概念,这是后续操作的基础。
1. 什么是 Neo4j?
Neo4j 是世界上最流行的原生图数据库(Native Graph Database),专门用于存储、查询和分析'实体之间的关联关系'。它与我们熟悉的 MySQL 等关系型数据库的核心差异的是:
介绍 Neo4j 图数据库的核心概念,包括节点、关系和属性。详细讲解了 Cypher 查询语言的语法及常用操作示例。同时提供了 Neo4j Aura 在线控制台的完整使用教程,涵盖数据库创建、连接以及查询工具(Query)的六大模块功能解析。最后通过实操练习巩固知识,帮助读者快速掌握图数据存储与分析技能。
图数据库领域的核心工具 ——Neo4j,同时详细拆解其在线预览控制台的使用方法,以及查询工具的模块功能。
在使用工具前,我们需要先理解 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 提供的托管式图数据库服务(无需本地安装,直接在线使用),而在线控制台是其预览版,适合新手快速上手。
在线控制台需要先创建数据库,才能存储节点和关系:
创建完成后,需连接数据库才能操作:
在查询工具页面,我们可以通过 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