Neo4j
项目功能
- 电影介绍
- 电影评分
- 电影演员列表
- 演员 A 和 B 合作过哪些电影
- 某演员出演过那种类型的电影或演过某种类型的电影有哪些
项目介绍
参考:https://github.com/kobeyk/Spring-Boot-Neo4j-Movies
本项目基于知识图谱进行问答,因此使用图数据库 neo4j。
(1)首先我们简单说一下什么是 Neo4j?
Neo4j 是一个 NoSQL 的图数据库管理系统,它存储的结构和 redis、mongodb 一样,都是 key-value 的形式,因此查询性能是非常棒的,同样是查询电影和电影类别之间的关系,mysql 需要用到 select 连接查询,而 neo4j 只需要一条 cypher 语句既能搞定。
(2)什么是 cypher 呢?
Neo4j 使用 Cypher 查询图形数据,Cypher 是描述性的图形查询语言,语法简单,功能强大,由于 Neo4j 在图形数据库家族中处于绝对的领先地位,拥有众多的用户基数,使得 Cypher 成为图形查询语言事实上的标准。
(3)为什么不使用 MySql 数据库呢?
上面第一点已经说过了,不是 mysql 干不了 neo4j 的工作,而是 neo4j 在处理节点(对象)关系这方面性能比较棒,而且查询语句简单,更容易构建我们的电影知识图谱,我们也可以将二者结合起来用,比如,mysql 存储对象的详细信息,而对象之间的关系,我们可以存储到 neo4j 中,二者配合起来使用也是很不错的。
neo4j 数据效果截图如下

How to use
在 idea 中导入 spring boot 后台项目,然后 pom 文件会自己下载的,如果下载失败,建议翻。去下载。
需要用到:neo4j,spark。具体的安装包会放在下面。
*微信小程序在 template 目录下。
在微信小程序中修改 pages/chat/chat.js 中 send 函数里的 wx.request 的 url。
数据软件包
https://blog.csdn.net/appleyk/article/details/80331997
根据博客一步一步来就行
SQL 文件:https://pan.baidu.com/s/1f0ytkiN7jkwcpbbOzId71Q
CSV 文件:https://pan.baidu.com/s/1QJRS8eyZXQt44wBwNyZ6eQ
Spark 文件:https://pan.baidu.com/s/10XUKpYBXqQ16UqDRTFerWg
neo4j:官网自行下载
HanLP:https://github.com/hankcs/HanLP/releases
样本数据集和贝叶斯分类器核心代码:https://pan.baidu.com/s/1APqPbehoSZHIsFgcswPygw
自定义词典:https://pan.baidu.com/s/1jayxGTyfP3PDrv21mA9o6g
项目截图



