大数据学习栈记——Neo4j的安装与使用

本文介绍图数据库Neofj的安装与使用,操作系统:Ubuntu24.04,Neofj版本:2025.04.0。

Apt安装

Neofj可以进行官网安装:Neo4j Deployment Center - Graph Database & Analytics

我这里安装是添加软件源的方法

最新版本

wget -O - https://debian.neo4j.com/neotechnology.gpg.key | sudo apt-key add –

echo 'deb https://debian.neo4j.com stable latest' | sudo tee /etc/apt/sources.list.d/neo4j.list

sudo apt-get update

sudo apt install neo4j #默认安装最新版

配置Neofj

随后,配置可以远程访问

sudo vim /etc/neo4j/neo4j.conf

在文中添加

server.logs.config=/etc/neo4j/server-logs.xml

server.logs.user.config=/etc/neo4j/user-logs.xml

server.default_listen_address=0.0.0.0

随后配置开机自启动

systemctl start neo4j.service

systemctl status neo4j.service

启动成功

Neo4j编程

Neo4j使用节点(Node)和关系(Relationship)来存储和表示数据。本文档将通过一个综合的电影知识图谱示例,展示如何在Neo4j中创建复杂的图模型并生成可视化效果。

创建节点

创建电影节点

// 创建经典电影节点

CREATE (matrix:Movie {

  title: "The Matrix",

  released: 1999,

  genre: ["Action", "Sci-Fi"],

  rating: 8.7,

  budget: 63000000,

  boxOffice: 467000000

})

CREATE (godfather:Movie {

  title: "The Godfather",

  released: 1972,

  genre: ["Crime", "Drama"],

  rating: 9.2,

  budget: 6000000,

  boxOffice: 287000000

})

CREATE (inception:Movie {

  title: "Inception",

  released: 2010,

  genre: ["Action", "Sci-Fi", "Thriller"],

  rating: 8.8,

  budget: 160000000,

  boxOffice: 836000000

})

CREATE (avatar:Movie {

  title: "Avatar",

  released: 2009,

  genre: ["Action", "Adventure", "Sci-Fi"],

  rating: 7.8,

  budget: 237000000,

  boxOffice: 2923000000

})

创建演员结点

// 创建演员节点

CREATE (keanu:Actor {

  name: "Keanu Reeves",

  born: 1964,

  nationality: "Canadian",

  awards: ["Saturn Award", "MTV Movie Award"]

})

CREATE (laurence:Actor {

  name: "Laurence Fishburne",

  born: 1961,

  nationality: "American",

  awards: ["Emmy Award", "Tony Award"]

})

CREATE (brando:Actor {

  name: "Marlon Brando",

  born: 1924,

  nationality: "American",

  awards: ["Academy Award", "Golden Globe"]

})

CREATE (dicaprio:Actor {

  name: "Leonardo DiCaprio",

  born: 1974,

  nationality: "American",

  awards: ["Academy Award", "Golden Globe", "BAFTA"]

})

CREATE (cameron_diaz:Actor {

  name: "Cameron Diaz",

  born: 1972,

  nationality: "American",

  awards: ["Golden Globe Nomination"]

})

创建导演节点

// 创建导演节点

CREATE (wachowski:Director {

  name: "The Wachowskis",

  activeYears: "1996-present",

  nationality: "American",

  knownFor: ["Sci-Fi", "Action"]

})

CREATE (coppola:Director {

  name: "Francis Ford Coppola",

  born: 1939,

  nationality: "American",

  awards: ["Academy Award", "Palme d'Or"],

  knownFor: ["Drama", "Crime"]

})

CREATE (nolan:Director {

  name: "Christopher Nolan",

  born: 1970,

  nationality: "British",

  awards: ["Academy Award", "BAFTA"],

  knownFor: ["Thriller", "Sci-Fi"]

})

CREATE (cameron:Director {

  name: "James Cameron",

  born: 1954,

  nationality: "Canadian",

  awards: ["Academy Award", "Golden Globe"],

  knownFor: ["Sci-Fi", "Action", "Adventure"]

})

创建制片公司节点

// 创建制片公司节点

CREATE (warner:Studio {

  name: "Warner Bros.",

  founded: 1923,

  headquarters: "Burbank, California",

  revenue: 15000000000

})

CREATE (paramount:Studio {

  name: "Paramount Pictures",

  founded: 1912,

  headquarters: "Hollywood, California",

  revenue: 3800000000

})

CREATE (fox:Studio {

  name: "20th Century Fox",

  founded: 1935,

  headquarters: "Los Angeles, California",

  revenue: 9000000000

})

创建用户节点

// 创建用户节点

CREATE (alice:User {

  name: "Alice Johnson",

  age: 28,

  location: "New York",

  favoriteGenre: ["Sci-Fi", "Action"]

})

CREATE (bob:User {

  name: "Bob Smith",

  age: 35,

  location: "Los Angeles",

  favoriteGenre: ["Drama", "Crime"]

})

CREATE (carol:User {

  name: "Carol Williams",

  age: 42,

  location: "Chicago",

  favoriteGenre: ["Thriller", "Adventure"]

})

创建关系

演员-电影关系

匹配已存在的节点并创建关系

MATCH (keanu:Actor {name: "Keanu Reeves"})

MATCH (matrix:Movie {title: "The Matrix"})

CREATE (keanu)-[:ACTED_IN {role: "Neo", screenTime: 90}]->(matrix)

MATCH (laurence:Actor {name: "Laurence Fishburne"})

MATCH (matrix:Movie {title: "The Matrix"})

CREATE (laurence)-[:ACTED_IN {role: "Morpheus", screenTime: 65}]->(matrix)

MATCH (brando:Actor {name: "Marlon Brando"})

MATCH (godfather:Movie {title: "The Godfather"})

CREATE (brando)-[:ACTED_IN {role: "Vito Corleone", screenTime: 85}]->(godfather)

MATCH (dicaprio:Actor {name: "Leonardo DiCaprio"})

MATCH (inception:Movie {title: "Inception"})

CREATE (dicaprio)-[:ACTED_IN {role: "Dom Cobb", screenTime: 120}]->(inception)

MATCH (cameron_diaz:Actor {name: "Cameron Diaz"})

MATCH (avatar:Movie {title: "Avatar"})

CREATE (cameron_diaz)-[:ACTED_IN {role: "Dr. Grace Augustine", screenTime: 45}]->(avatar)

导演-电影关系

MATCH (wachowski:Director {name: "The Wachowskis"})

MATCH (matrix:Movie {title: "The Matrix"})

CREATE (wachowski)-[:DIRECTED {year: 1999, budget: 63000000}]->(matrix)

MATCH (coppola:Director {name: "Francis Ford Coppola"})

MATCH (godfather:Movie {title: "The Godfather"})

CREATE (coppola)-[:DIRECTED {year: 1972, budget: 6000000}]->(godfather)

MATCH (nolan:Director {name: "Christopher Nolan"})

MATCH (inception:Movie {title: "Inception"})

CREATE (nolan)-[:DIRECTED {year: 2010, budget: 160000000}]->(inception)

MATCH (cameron:Director {name: "James Cameron"})

MATCH (avatar:Movie {title: "Avatar"})

CREATE (cameron)-[:DIRECTED {year: 2009, budget: 237000000}]->(avatar)

制片公司-电影关系

MATCH (warner:Studio {name: "Warner Bros."})

MATCH (matrix:Movie {title: "The Matrix"})

CREATE (warner)-[:PRODUCED {investment: 63000000, profit: 404000000}]->(matrix)

MATCH (paramount:Studio {name: "Paramount Pictures"})

MATCH (godfather:Movie {title: "The Godfather"})

CREATE (paramount)-[:PRODUCED {investment: 6000000, profit: 281000000}]->(godfather)

MATCH (warner:Studio {name: "Warner Bros."})

MATCH (inception:Movie {title: "Inception"})

CREATE (warner)-[:PRODUCED {investment: 160000000, profit: 676000000}]->(inception)

MATCH (fox:Studio {name: "20th Century Fox"})

MATCH (avatar:Movie {title: "Avatar"})

CREATE (fox)-[:PRODUCED {investment: 237000000, profit: 2686000000}]->(avatar)

用户评分关系

MATCH (alice:User {name: "Alice Johnson"})

MATCH (matrix:Movie {title: "The Matrix"})

CREATE (alice)-[:RATED {score: 9.5, timestamp: datetime("2024-01-15T14:30:00")}]->(matrix)

MATCH (alice:User {name: "Alice Johnson"})

MATCH (inception:Movie {title: "Inception"})

CREATE (alice)-[:RATED {score: 9.0, timestamp: datetime("2024-02-10T19:45:00")}]->(inception)

MATCH (bob:User {name: "Bob Smith"})

MATCH (godfather:Movie {title: "The Godfather"})

CREATE (bob)-[:RATED {score: 10.0, timestamp: datetime("2024-01-20T21:15:00")}]->(godfather)

MATCH (carol:User {name: "Carol Williams"})

MATCH (avatar:Movie {title: "Avatar"})

CREATE (carol)-[:RATED {score: 8.5, timestamp: datetime("2024-03-05T16:20:00")}]->(avatar)

MATCH (carol:User {name: "Carol Williams"})

MATCH (inception:Movie {title: "Inception"})

CREATE (carol)-[:RATED {score: 9.2, timestamp: datetime("2024-02-28T20:10:00")}]->(inception)

演员间合作关系

MATCH (keanu:Actor {name: "Keanu Reeves"})

MATCH (laurence:Actor {name: "Laurence Fishburne"})

CREATE (keanu)-[:COLLABORATED_WITH {movie: "The Matrix", year: 1999}]->(laurence)

可视化

Neo4j Browser中生成完整的图可视化:

MATCH (n)-[r]->(m)

RETURN n, r, m

LIMIT 100

电影生态系统可视化

MATCH path = (n)-[*1..2]-(movie:Movie {title: "The Matrix"}) RETURN path

演员关系网络

// 显示演员之间的协作网络

MATCH (actor1:Actor)-[:ACTED_IN]->(movie:Movie)<-[:ACTED_IN]-(actor2:Actor)

WHERE actor1 <> actor2

RETURN actor1, movie, actor2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/web/83404.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

web架构4------(nginx常用变量,nginx中英文自动匹配,lnmp网站架构,正向代理,反向代理,负载均衡)

一.前言 本期来介绍nginx最后几个知识点&#xff0c;看着要说的内容很多&#xff0c;其实一点也不多&#xff0c;都是所见即所得的东西。 二.nginx常用变量 2.1 常用变量 $args 请求中的参数&#xff0c;也叫查询参数&#xff0c;如www.123.com/1.php?a1&b2的$args就是…

openeuler系统(CentOs)图形化桌面黑屏/丢失(开启VNC服务冲突)

1. VNC服务开启如下&#xff1a; https://zhuanlan.zhihu.com/p/5049263261 在centos8系统上使用tigervnc-server搭建VNC_centos8 tigervnc-server-CSDN博客 2. 上述操作完成后&#xff0c;连接VNC仍会出现黑屏&#xff0c;则需要编辑/root/.vnc/xstartup&#xff1a; [运维…

MySQL:Prepared Statement 预处理语句

预处理语句&#xff08;Prepared Statements&#xff09;是 MySQL 中一种用于执行 SQL 查询的高效、安全的方法。通过使用预处理语句&#xff0c;可以显著提升查询性能&#xff0c;并防止 SQL 注入攻击。本文将详细介绍 MySQL 预处理语句的概念、使用方法及其优势。 一、预处理…

EPPLUS——CAD c#读写EXCEL的第三方库

EPPLUS(可支持NET35) 在 CAD 的 C# 二次开发中&#xff0c;使用 EPPLUS 库处理 Excel 文件具有以下显著优点&#xff0c;尤其在兼容性、便捷性和性能等方面契合 CAD 项目的需求&#xff1a; 1. 跨.NET 版本兼容性强&#xff0c;适配 CAD 多环境部署 多框架支持&#xff1a;EP…

Linux知识回顾总结----进程状态

本章将会介绍进程的一些概念&#xff1a;冯诺伊曼体系结构、进程是什么&#xff0c;怎么用、怎么表现得、进程空间地址、物理地址、虚拟地址、为什么存在进程空间地址、如何感性得去理解进程空间地址、环境变量是如何使用的。 目录 1. 冯诺伊曼体系结构 1.1 是什么 1.2 结论 …

微信小程序之bind和catch

这两个呢&#xff0c;都是绑定事件用的&#xff0c;具体使用有些小区别。 官方文档&#xff1a; 事件冒泡处理不同 bind&#xff1a;绑定的事件会向上冒泡&#xff0c;即触发当前组件的事件后&#xff0c;还会继续触发父组件的相同事件。例如&#xff0c;有一个子视图绑定了b…

Android Test3 获取的ANDROID_ID值不同

Android Test3 获取的ANDROID_ID值不同 这篇文章来说明上一篇文章中说到的一个现象&#xff1a;在同一个项目中&#xff0c;创建不同的 app module&#xff0c;运行同一段测试代码&#xff0c;获取到的 ANDROID_ID 的值不同。 我也是第一次认真研究这个现象&#xff0c;这个还…

JSON 和 LabVIEW Data Types 互相转换

使用JSONtext C:\Program Files (x86)\National Instruments\LabVIEW 2021\examples\JDP Science\JSONtext JSONtext LabVIEW Data Types.vi

docker和docker-compose的版本对应关系怎么看?

docker和docker-compose的版本对应关系怎么看&#xff1f;最近在安装这两个工具&#xff0c;像知道他们的版本对应关系&#xff0c;查了不少资料才找到。 虽然 Docker 和 Docker Compose 的版本并不严格绑定&#xff0c;但是在某些情况下&#xff0c;新版本的 Docker Compose …

邮科ODM摄像头:多维度护航高铁安全系统方案解析

‌高铁作为现代交通的重要支柱&#xff0c;其安全稳定运行依赖于高效的监控体系。摄像头系统作为高铁安全管理的“视觉感知中枢”&#xff0c;凭借多场景覆盖、智能分析以及环境适应性设计&#xff0c;在行车安全、设备维护、乘客服务等方面发挥着不可或缺的作用。本文将从技术…

盒模型小全

CSS盒子模型详解 1. 定义 CSS盒子模型是用于描述HTML元素在页面中布局和表现的核心概念之一。在CSS中&#xff0c;所有HTML元素都被视为一个矩形的盒子&#xff0c;这些盒子封装了周围的HTML元素&#xff0c;并允许在其他元素和周围元素边框之间的空间放置内容。 2. 组成部分…

自定义鼠标效果 - 浏览器扩展使用教程

自定义鼠标效果 - 浏览器扩展使用教程 这里写目录标题 自定义鼠标效果 - 浏览器扩展使用教程功能特点安装方法Chrome/Edge浏览器 使用指南1. 更改鼠标光标样式2. 启用鼠标轨迹效果3. 自定义轨迹效果点状/彩虹/渐隐轨迹&#xff1a;表情轨迹&#xff1a; 管理自定义光标支持的文…

基于SpringBoot实现的课程答疑系统设计与实现【源码+文档】

基于SpringBootVue实现的课程答疑系统采用前后端分离架构方式&#xff0c;系统设计了管理员、学生、老师三种角色&#xff0c;系统实现了用户登录与注册、个人中心、学生管理、老师管理、科目类型管理、学生问题管理、老师回答管理、老师信息管理、关注列表管理、交流区、轮播图…

御微半导体面试总结

前一阵子在公司干的难受&#xff0c;所以再合肥这边面试了几家公司&#xff0c;挑一个御微半导体来说一下吧&#xff0c;公司主要是做半导体晶元测量的&#xff0c;具体啥我也不太明白。 公司产品线多&#xff0c;每条产品线配有独立的软件、结构、光学控制等人员开发语言和框…

Android Compose 自定义圆形取色盘

val Dp.toPx: Floatget() {var scale 3f // MyApplication.context.resources.displayMetrics.apply { // scale density // }return value * scale}val colors List(360) { i ->Color.hsv(360f - i, 1f, 1f) // 360到1的所有HSV颜色 }Preview …

vscode 配置 latex

下载插件 安装插件前自行安装 texlive, 按照 https://tug.org/texlive/ 要求安装 找到 settings 打开 json 文件 在 json 文件中添加如下配置 "latex-workshop.latex.tools": [{"name": "latexmk","command": "latexmk",&qu…

安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(质检)

船舶质检管理现状&#xff1a;质检环节部分依赖人工检测&#xff0c;质检员依据质量标准对产品进行抽检或全检。人工质检受质检员主观因素影响较大&#xff0c;不同质检员对标准的把握可能存在差异。 一、痛点与需求 1 Arbigtec 人工经验依赖严重&#xff1a; 质检员的检测准确…

jenkins gerrit-trigger插件配置

插件gerrit-trigger下载好之后要在Manage Jenkins -->Gerrit Trigger-->New Server 中新增Gerrit Servers 配置好保存后点击“状态”查看是否正常

ubuntu24.04下 zookeeper3.8.4 集群的配置

1、环境 1.1 三台机器网络互通&#xff0c;并做hosts解析 准备三台及以上ubuntu24.04主机&#xff08;奇数&#xff09; rootzk-node01:~# hostname zk-node01rootzk-node01:~# cat /etc/hosts 127.0.0.1 localhost 127.0.1.1 u24-server10.0.49.215 zk-node01 10.0.4…

火山引擎 veFuser:面向扩散模型的图像与视频生成推理服务框架

资料来源&#xff1a;火山引擎-开发者社区 DiT 模型与推理挑战 近年来&#xff0c;扩散模型&#xff08;Diffusion Models&#xff09;在生成式人工智能领域取得了突破性进展&#xff0c;尤其是在图像和视频生成方面表现卓越。基于 Transformer 的扩散模型&#xff08;DiT, D…