• 凭借SpringBoot整合Neo4j,我理清了《雷神》中错综复杂的人物关系


    哈喽大家好啊,我是Hydra

    虽然距离中秋放假还要熬过漫长的两天,不过也有个好消息,今天是《雷神4》上线Disney+流媒体的日子(也就是说我们稍后就可以网盘见了)~

    了解北欧神话的小伙伴们应该知道,它的神话体系可以用一个字来形容,那就是『  』!就像是雷神3中下面这张错综复杂的关系网,也只能算是其中的一支半节。

    而我们在上一篇文章中,介绍了关于知识图谱的一些基本理论知识,俗话说的好,光说不练假把式,今天我们就来看看,如何在springboot项目中,实现并呈现这张雷神中复杂的人物关系图谱。

    本文将通过下面几个主要模块,构建自然界中实体间的联系,实现知识图谱描述:

    • 图数据库neo4j安装
    • 简单CQL入门
    • springboot整合neo4j
    • 文本SPO抽取
    • 动态构建知识图谱

    Neo4j安装

    知识图谱的底层依赖于关键的图数据库,在这里我们选择Neo4j,它是一款高性能的 nosql 图形数据库,能够将结构化的数据存储在图而不是表中。

    首先进行安装,打开官网下载Neo4j的安装包,下载免费的community社区版就可以,地址放在下面:

    https://neo4j.com/download/other-releases/。
    

    需要注意的是,neo4j 4.x以上的版本都需要依赖 jdk11环境,所以如果运行环境是jdk8的话,那么还是老老实实下载3.x版本就行,下载解压完成后,在bin目录下通过命令启动:

    neo4j console

    启动后在浏览器访问安装服务器的7474端口,就可以打开neo4j的控制台页面:

    通过左侧的导航栏,我们依次可以查看存储的数据、一些基础查询的示例以及一些帮助说明。

    而顶部带有$符号的输入框,可以用来输入neo4j特有的CQL查询语句并执行,具体的语法我们放在下面介绍。

    简单CQL入门

    就像我们平常使用关系型数据库中的SQL语句一样,neo4j中可以使用Cypher查询语言(CQL)进行图形数据库的查询,我们简单来看一下增删改查的用法。

    添加节点

    在CQL中,可以通过CREATE命令去创建一个节点,创建不含有属性节点的语法如下:

    CREATE (:)

    在CREATE语句中,包含两个基础元素,节点名称node-name和标签名称lable-name。标签名称相当于关系型数据库中的表名,而节点名称则代指这一条数据。

    以下面的CREATE语句为例,就相当于在Person这张表中创建一条没有属性的空数据。

    CREATE (索尔:Person)

    而创建包含属性的节点时,可以在标签名称后面追加一个描绘属性的json字符串:

    CREATE (
       :
       {    
          :,
          …
          :
       }
    )

    用下面的语句创建一个包含属性的节点:

    CREATE (洛基:Person {name:"洛基",title:"诡计之神"})

    查询节点

    在创建完节点后,我们就可以使用MATCH匹配命令查询已存在的节点及属性的数据,命令的格式如下:

    MATCH (:)

    通常,MATCH命令在后面配合RETURN、DELETE等命令使用,执行具体的返回或删除等操作。

    执行下面的命令:

    MATCH (p:Person) RETURN p

    查看可视化的显示结果:

  • 相关阅读:
    fiddler抓包
    6. `Java` 并发基础之`ReentrantReadLock`
    关于Http和Https
    探索C语言的数据类型:解密编程世界的核心秘密
    使用Mybatis数据库逆向生成工具
    零基础Linux_4(权限和初识操作系统)具体用户分类+rwx+umask+粘滞位
    MacOs下安装Kong网关
    【东华医为的实习与卫宁的入职工作】
    OpenAI停服,国产大模型免费用!开发者Token自由实现了
    “Linux免除系统交互操作方法、expect自动化交互工具” 及 “SSH批量修改主机密码脚本”
  • 原文地址:https://blog.csdn.net/AS011x/article/details/126763819