neo4j 官方入门实例介绍——“电影关系图”

Springboot集成neo4j实现知识图谱关系图 使用neo4j来完成人员关系公司项目有一个功能需要将各个人员关系列出,在参加评选的时候,进行展示和筛选。 阅读详情
AI摘要

本文详细介绍如何使用Neo4j图数据库进行电影、演员、导演等数据的导入、查询及关系分析,涵盖创建节点、查询节点、关系查询及路径查询等核心操作。

首先打开neo4j 管理界面,点击图片中的箭头Write Code链接进入代码书写引导界面,然后点击Movie Graph下面的Create a graph链接进入。
在这里插入图片描述
在这里插入图片描述
进来后会有一堆英文的介绍,这个实例将指导你学习以下入门操作:

  • 创建图数据库:将电影、演员、导演等图数据导入到Neo4j数据库中;
  • 检索节点:检索特定电影和演员;
  • 查询关系:发现相关的演员和导演;
  • 查询相关路径:查询他们之间的关系路径

在这里插入图片描述

1.创建图数据

单击界面中右侧换页箭头会看到一些代码块,点击它,这些代码将自动输入到命令区,再点击运行按钮,就创建完成了。
在这里插入图片描述
【程序1-1】创建电影节点(官方程序中的第1行)
创建一个Movie节点,这个节点上带有三个属性 {title:‘The Martix’, released:1999, tagline:‘Welcome to the Real World’},分别表示这个电影的标题:The Matrix、发布时间:1999、宣传词:Welcome to the Real World。

CREATE (TheMatrix:Movie {title:'The Martix', released:1999, tagline:'Welcome to the Real World'})

【程序1-2】创建人物节点(官方程序第2行)
下面程序创建了一个Person节点,节点带有两个属性{name:‘Keanu Reeves’, born:1964}。

CREATE (Keanu:Person {name:'Keanu Reeves', born:1964})

【程序1-3】创建演员、导演关系(官方程序9-16行)
(Keanu)-[:ACTED_IN {roles:[‘Neo’]}]->(TheMatrix)意思是创建一个演员参演电影关系,演员Keanu以角色roles:[‘Neo’]参演ACTED_IN到电影TheMatrix中。
(LillyW)-[:DIRECTED]->(TheMatrix)意思是创建导演与电影的关系,即LillyW导演了[:DIRECTED]电影TheMatrix。

CREATE
(Keanu)-[:ACTED_IN {roles:['Neo']}]->(TheMatrix),
(Carrie)-[:ACTED_IN {roles:['Trinity']}]->(TheMatrix),
(Laurence)-[:ACTED_IN {roles:['Morpheus']}]->(TheMatrix),
(Hugo)-[:ACTED_IN {roles:['Agent Smith']}]->(TheMatrix),
(LillyW)-[:DIRECTED]->(TheMatrix),
(LanaW)-[:DIRECTED]->(TheMatrix),
(JoelS)-[:PRODUCED]->(TheMatrix)

执行完全部指令后,这个数据库中的电影、演员、导演、制片商的关系就创建出来了。完整的图如下:
在这里插入图片描述

2.查找节点

【程序2-1】查找名为“Tom Hanks”的人物

MATCH (tom {name:'Tom Hanks'}) RETURN tom

在这里插入图片描述
可以看到这个节点被查找到了,点击节点的图标会看到节点的属性,下方。
【程序2-2】查找名为“Cloud Atlas”的电影

MATCH (cloudAtlas {title:"Cloud Atlas"}) RETURN cloudAtlas

在这里插入图片描述
【程序2-3】随机查找多个人物的人名

MATCH (people:Person) RETURN people.name LIMIT 10

在这里插入图片描述
在本次结果中,由于只返回name属性,所以就不用图形化的形式返回。
【程序2-4】查找1990年到2000年发行的电影的名称

MATCH (nineties:Movie)
WHERE nineties.released > 1990 AND nineties.released < 2000
RETURN nineties.title

在这里插入图片描述

3.查询关系

【程序3-1】查找‘Tom Hanks’参演过的电影名称

MATCH (tom:Person{name:"Tom Hanks"}) -[:ACTED_IN] -> (tomHanksMovies) return tom,tomHanksMovies

在这里插入图片描述
【程序3-2】查找谁导演了电影“Cloud Atlas”

MATCH (cloudAtlas{title:'Cloud Atlas'}) <- [:DIRECTED] - (directors)
return directors.name

在这里插入图片描述
【程序3-3】查找与Tom Hanks同出演过电影的人
首先通过匹配节点类型为Person、属性为{name:‘Tom Hanks’}的节点,然后匹配此节点通过[:ACTED_IN]关系指向的节点m,并且同时匹配某个节点coActors也通过[:ACTED_IN]关系指向的节点m,然后返回m的name属性。

match (tom:Person {name:'Tom Hanks'}) - [:ACTED_IN] ->(m)<-[:ACTED_IN] - (coActors)
return coActors.name

在这里插入图片描述
【程序3-4】查找与电影“Cloud Atlas”相关的所有人

match (people:Person) - [relatedTo] - (:Movie{title:'Cloud Atlas'})
return people.name, Type(relatedTo), relatedTo

在这里插入图片描述
【程序3-5】查找与演员“Kevin Bacon”存在4条及以内关系的任何演员和电影

match (bacon:Person{name:'Kevin Bacon'}) - [*1..4] - (hollywood)
return distinct hollywood

在这里插入图片描述
【程序3-6】查找与演员Kevin Bacon与Meg Ryan之间的最短关系路径
首先匹配节点类型为Person、属性为{name:‘Kevin Bacon’}的节点,再匹配节点类型为Person、属性为{name:‘Meg Ryan’}的节点,两者用[*]关系操作符相连代表两者存在任意深度的关系,然后再使用shortestPath方法返回两者在所有深度关系遍历路径中最短的一条。

Match p = shortestPath((bacon:Person{name:'Kevin Bacon'}) - [*] - (meg:Person{name:'Meg Ryan'}))
return p

在这里插入图片描述

4.结语

官方例子到这就结束了,以后有机会继续更新一些我正在学的py2neo操作neo4j的一些用法,希望对你们有所帮助,并指出我的不足之处,相互学习。

使用 Apache ECharts 可视化 Neo4j 图数据 本文介绍使用 Apache ECharts 可视化 Neo4j 的图数据。 阅读详情

相关推荐

用cytoscape.js展示neo4j网络关系图 - 2. py2neo

要完成的功能要把neo4j数据库里面的Movie数据正确的显示到前端,我们需要完成如下的功能。 搭建基于Flask的简单网站 用py2neo来获取neo4j里的节点及关系信息 把从neo4j获取的信息转换成cytoscape.js能认识的JSON字符串 在前端用cytoscape.js显示节点网络图 上一篇博客介绍了如何搭建基于Flask的简单网站,现在我们要用py2neo来从neo4j serve

钟柱的专栏 1万+

如何使用Neo4j构建人物关系图?

非关系型数据库,也称为NoSQL,泛指非关系型的数据库。反欺诈已经是金融行业一个核心应用,通过图数据库可以对不同的个体、团体做关联分析,从人物在指定时间内的行为,例如去过地方的IP地址、曾经使用过的MAC地址(包括手机端、PC端、WIFI等)、社交网络的关联度分析,同一时间点是否曾经在同一地理位置附近出现过,银行账号之间是否有历史交易信息等。在社交网络中,公司、员工、技能的信息,这些都是节点,它们之间的关系和朋友之间的关系都是边,在这里面图数据库可以做一些非常复杂的公司之间关系的查询。

zy1992As的博客 1620

Neo4j 实战篇(一)基于Py2Neo构建电影知识图谱

通过本次的尝试,我们使用py2neo进行了Neo4j的增删改查,熟悉使用 Node、Relationship、Graph,另外,还有大量的 pandas相关的操作。最终分析了影视电影和演员之间的关系,当然还有更多指标可以分析,比如:出现次数最多的演员以及电影、同步出现率最高的电影等等。

希望每天都能进步一点点 3224

neo4j配置

修改配置 在安装目录下找到conf目录下的neo4j.conf文件 修改相应配置如下: 修改第22行load csv时l路径,在前面加个#,可从任意路径读取文件 #dbms.directories.import=import 修改35行和36行,设置JVM初始堆内存和JVM最大堆内存 生产环境给的JVM最大堆内存越大越好,但是要小于机器的物理内存 dbms.memory.heap.initial...

qq_27374315的博客 1043

Neo4j 小白必看的电影知识图谱(Movie Graph:Try Neo4j with live data)

Neo4j 电影知识图谱 Movie Graph初探前言1. 创建Graph2. 查找Data3. 查询Relation4. 解决方案 前言 使用实时数据尝试Neo4j,演示常见查询模式的完整示例图。 这个电影知识图谱(Movie Graph)是知识图谱的一个简单应用,交叉引用流行文化中的演员和电影,其中包含演员和导演,他们通过合作拍摄的电影相互关联。 本文将向您介绍如何(This article will show you how to): 创建Graph:将电影数据插入到图形中 Create: in

全网粉丝30W+,优快云、稀土掘金人工智能领域签约作者,人工智能、大模型、Python 爬虫,商务合作,请私信沟通。 4359

基于neo4j的关系图谱简单研究

基于neo4j,实现关系图谱的功能。添加节点,添加节点关联,节点关联查询,节点删除。配合swagger2,实现后台交互操作。可在此基础上进一步研究

【3】 Neo4j基本概念与入门实例

Neo4j基本概念与入门实例1.1Neo4j 图数据中基本元素与概念1.1.1节点1.1.2 关系1.1.3 属性1.1.4 路径1.1.5遍历(Traversal)1.2官方入门实例介绍1.2.1创建图数据1.2.2 检索节点1.2.2.1 查找人员1.2.2.2查找电影节点1.2.2.3随机查找多个人物的人名1.2.2.4查找多个电影1.2.3 查询关系1.2.3.1查找演员参演的电影1.2.4查询关系路径 1.1Neo4j 图数据中基本元素与概念 1.1.1节点 节点(Node)是图数据库中的一个基本

weixin_41701308的博客 916

Windows用户必看:如何在WSL中完美安装CosyVoice的ttsfrd依赖(附避坑指南)

本文为Windows用户提供了在WSL中部署CosyVoice语音合成模型并解决其关键依赖ttsfrd的完整指南。文章详细介绍了从WSL环境配置、Python环境搭建、模型下载到ttsfrd深度安装与问题排查的全流程,并针对WSL特有的文件系统、权限和GPU支持问题提供了解决方案,帮助开发者高效攻克部署难题。

dell8的博客 248

Neo4j实例:电影关系图

Neo4j管理界面提供了一个官方入门实例“电影关系图”,点击下述步骤。 单击实例引导页换页箭头,单击代码块,运行创建关系。 一、检索节点 例1、查找名为Tom Hanks的人 MATCH (TomH {name:"Tom Hanks"}) RETURN TomH 该命令使用match查找匹配条件{name:“Tom Hanks”}的节点并返回。 例2、查找名为Cloud Atlas的电影 ...

Mortal的博客 2788

C#连接数据库报Authentication to host ‘127.0.0.1‘ for user ‘root‘ using method ‘caching_sha2_password‘ fail

所以导致的,除了上边的办法,还可以把这个加密规则修改一下,这个的修改方式有很多,具体原因是因为MySQL8.0以前的加密规则是。

weixin_42209881的博客 4129

【点云语义分割】Ubuntu20.04下RangeNet++环境配置与实战指南

本文详细介绍了在Ubuntu20.04系统下配置和运行RangeNet++点云语义分割模型的完整实战指南。内容涵盖从Cuda、cudnn到TensorRT的深度学习环境搭建,RangeNet++源码编译的详细步骤与常见问题解决,以及如何运行首个分割Demo并可视化结果。最后,还探讨了处理自定义点云数据格式和进行性能调优的进阶技巧,旨在帮助开发者和研究者快速部署并应用这一先进的点云语义分割技术。

rnn9storyteller的博客 516

Neo4j官方入门实例介绍

Neo4j的Cypher语言官方入门实例介绍

我真的不是cjcの博客 3644

逆变器方案(工频全套)工频正弦波逆变器开发板全套设计资

逆变器方案(工频全套)工频正弦波逆变器开发板,24V-72V通用12只TO-247封装MOS管,额定输出功率6500W以下;配有触摸屏操作界面,运行数据一目了然,带市电互补UPS功能,可选择电池优先或市电有限工作,我们的开发板均从实战角度出发,让您的学习更便捷,包含全套设计资料,PCB.原理图.源代码,程序均有中文注释,MCU选用美国微芯公的PIC-8位单片机,民用数字电源首选单片机,抗干扰能力强,运行稳定。...

m0_73494033的博客 894

Neo4j电影关系图

“电影关系图”实例将电影、电影导演、演员之间的复杂网状关系作为蓝本,使用Neo4j创建三者关系的图结构,虽然实例数据规模小但五脏俱全。 步骤: 一、 创建图数据:将电影、导演、演员等图数据导入Neo4j数据库中 cypher语句: 1 CREATE (TheMatrix:Movie {title:'The Matrix', released:1999, tagline:'W...

anshenwa4859的博客 945

论deepseek软件底层原理

如处理医学文本时,将任务分配给擅长医学知识处理的专家,避免通用模块处理的低效性,极大提升计算效率与任务处理的针对性。教师模型复杂且强大,学生模型结构简单。协作处理:多模块协作时,建立数据流通与交互机制,各模块按顺序或并行处理数据,不断传递与更新中间结果,共同完成复杂任务。(一)输入处理与任务判断 输入预处理:接收输入数据,如用户文本提问,首先进行清洗,去除噪声数据、特殊字符等。任务分类:通过MoE架构“路由器”,依据输入数据特征,判断任务所属领域与类型,如文本分类、情感分析等,为后续处理模块选择提供依据。

欢乐打代码! 2738

51单片机+L298驱动步进电机+L297测速+LCD1602显示+按键调试+Proteus仿真

51单片机+L298驱动步进电机+L297测速+LCD1602显示+按键调试+Proteus仿真 *Proteus仿真 L298N是双H桥式驱动器。 L297是步进电机控制集成芯片(包括环形分配器),可产生四相驱动信号,应用于微处理机控制两相双极性和四相单极性步进电机。电动机可由半阶梯、正常和斩波驱动模式驱动,同时设于晶片内的PWM斩波线路容许以开关形式控制线路的电流。此器件只需要时钟、方向和模式输入信号。相位是由内部产生的,因此可减轻微处理机和程序设计的负担。 实例代码 /************

perseverance51博客 4585

Neo4j使用 实例介绍 快速上手 从入门到熟练

节点用 () 表示 关系用 [] 表示 节点到节点的关系用 ()-[]->() 表示 节点和关系中都可以有属性,用 {} 表示,里面以键值对表示属性名和值 节点:表示一个实体记录,就像关系数据库中的一条记录一样,一个节点可以包含多个属性(property)和多个标签(Label) 例如图片中有两个节点 左边节点 Label 为 Person,节点的属性有 name ,birth ,ge...

qq_42886289的博客 3978

分级 API Key 的使用案例

分级 API Key 的使用案例 1. 背景介绍 1.1 问题由来 随着网络服务的普及,API(Application Programming Interface,应用程序编程接口)成为了连接不同系统和应用的关键桥梁。API Key(API密钥)

欢迎来到我的优快云空间!这里聚焦AI大模型应用实战,分享前沿技术、实战案例与开发经验。 1022

python+neo4j构建基于知识图谱的电影知识智能问答系统

​ ~~~~~~~~ 最近,课程设计要求做关于知识图谱的调研工作。调研过程中,在网络上发现诸多同学自行构建知识图谱的相关内容,就考虑自己自行搭建一个。经过调研和基于自己技术的考量,最终还是打算做基于知识图谱的电影知识智能问答系统(主要是数据集比较好构建)。虽然比较简单,但是这个过程中自己也收获不少新知识,对于整个系统框架的了解也更加深入。​ ~~~~~~~~ 在智能问答系统构建之前,需要做部分准备工作,主要包含两个方面:软件安装:​

DALEONE的博客 2万+

npm install failed如何办?

上网搜索,说是网络配置不太对。按照如下几步,保证解决问题。在运行npm install指令时,出现如下错误。

xiezhipu的博客 880

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Python连接Neo4j(py2neo)并创建4万节点电影演员关系图

本项目实现了一个Neo4jDatabase类,基于py2neo操作Neo4j图数据库。然后从豆瓣电影网爬取相关信息,在Neo4j数据库中创建相应的节点和关系,实现了电影数据的结构化存储。

weixin_44458771的博客 2046

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Neo4j电影关系图Cypher

CREATE (TheMatrix:Movie {title:'The Matrix', released:1999, tagline:'Welcome to the Real World'}) CREATE (Keanu:Person {name:'Keanu Reeves', born:1964}) CREATE (Carrie:Person {name:'Carrie-Anne Moss',...

gmHappy 1万+

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Neo4j演员电影关系实例

本实例是一个小型的电影图应用,包含演员、导演以及它们之间的关系,具体内容包括向图中添加电影数据、创建唯一的节点属性限制、通过标签查找节点、获取电影和演员的信息、查找关联的导演和演员等。

快乐江小鱼的博客 1127

如何用Spring Data Neo4j快速构建电影关系图谱应用:完整实践指南

在当今数据驱动的时代,传统的表格数据库在处理复杂关系网络时常常显得力不从心。当我们需要分析电影、演员、导演之间的多维关系时,图形数据库以其天然的优势脱颖而出。movies-java-spring-data-neo4j项目正是这样一个完美的示例,展示了如何使用**Spring Data Neo4j**构建高效的关系图谱应用。这个项目不仅是一个简单的电影数据库,更是一个完整的**图形数据库实战教程**

gitblog_00438的博客 944

neo4j 实战、实例、示例 创建电影关系图 -1

1. 创建关系 因为代码占篇幅太大,创建整个“电源关系图”的代码在文章最下方。 2. 简单分析创建语句 2.1 创建电影节点 CREATE (TheMatrix:Movie {title:'The Matrix', released:1999, tagline:'Welcome to the...

WGH100817的博客 1081

如何使用Python和Neo4j构建关系图谱:一个深度分析与实现指南

关系图谱是以图的形式来表示和存储数据,数据的元素被建模为节点(Node)和关系(Relationship)。节点代表实体,如人、物品、地点等,而关系则描述节点之间的连接,如朋友关系、购买行为、地理位置关系等。Neo4j是一个高效的图数据库,它以图结构存储数据,并使用Cypher语言来进行查询。与传统的关系型数据库不同,图数据库非常适合处理复杂和高度关联的数据,尤其是在社交网络、推荐系统等领域有广泛应用。

qalangtao的博客-qalangtao.com 1277
上一篇: neo4j 4.x版本下载
下一篇: 图谱理论与复杂网络相关算法
xiao黄
xiao黄 优质创作者: 人工智能技术领域 优质创作者: 人工智能技术领域 领域专家: 数据科学与机器学习技术领域 领域专家: 数据科学与机器学习技术领域
博客等级 码龄8年 1万+粉丝 250原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xiao黄

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值