掌桥专利:专业的专利平台
掌桥专利
首页

基于图形数据库Neo4j的RDF数据探寻方法

文献发布时间:2023-06-19 10:24:22


基于图形数据库Neo4j的RDF数据探寻方法

技术领域

本发明公开了一种基于图形数据库 Neo4j 的RDF(Resource DescriptionFramework,资源描述框架)数据探寻方法,属于 RDF 数据探寻领域。

背景技术

由于 RDF 数据模型可用于表达关联数据,并且具有机器可读性的特点,RDF 被广泛应用于机器之间的数据传输、数据交换、以及逻辑推理等过程。RDF 是以三元组为核心的框架,无论使用哪种表示形式,RDF 模型所表达的语义都是不变的,所以 RDF 被广泛应用到社交网络、军事领域、知识工程等领域当中。

随着 RDF 数据的广泛应用,普通用户对于 RDF 数据集探寻的要求变得越来越高。其中,阻碍普通用户对 RDF 数据集进行探寻操作的困难具体有以下3个方面:(1)普通用户不具备 RDF 数据模型的相关知识,(2)对于 RDF 数据集的查询通常需要结构化查询语言(SPARQL)来协助,结构化查询语言的学习对于普通用户来说学习成本太高,(3)三元组表达形式便于机器理解,但对于不具备 RDF 相关知识的普通用户从三元组中查找数据难度过高,需要更加简洁的表示形式给用户展示数据。

由于普通用户对于探寻 RDF 数据集的需求,RDF 探寻方法的研究成为了一个热门的领域。为了解决以上 RDF 探寻过程中的困难,研究人员在探寻过程中加入了各种新型的数据探寻技术。其中,关键字搜索为最常见的 RDF 探寻方法,其无需用户掌握 RDF 的相关知识,只需要用户输入所需要查询的内容即可返回数据集中与关键字相关的信息。虽然关键词搜索具有操作简单的特点,但是所返回的信息包含大量的冗余信息,需要用户去甄别,从而加重了用户在探寻过程中的负担。另一种应用广泛的探寻技术为分面搜索,其探寻过程与用户使用浏览器浏览信息类似,数据集信息按照不同的特征(类型)被分成不同的面,每个面下再根据不同的特征进行分面,用户通过具体特征选择对应的分面不断将查询范围缩小,最终找到所感兴趣的信息。分面搜索通过对数据进行不断的分面缩减搜索数据的范围,用户选择分面的过程中可以对数据集的概况进行了解,便于用户进行分面的选择。由于数据根据不同的特征进行不断的分面,所以每个面所展示的数据由分面特征所决定,从而不利于展示原数据的关联性,而且用户在分面搜索的探寻过程中无法进行跳跃式的查询,只能通过不断选择分面去探寻,从而降低了探寻数据的效率。此外,新型的探寻方法当中有基于自然语言处理接口去开发的探寻方法,对于该方法的研究大多需要大量的训练数据去训练其中的模型,其加大了大规模不同 RDF 数据集探寻的难度。

属性图模型更加接近现实世界的关联数据,用属性图模型表示关联数据将利于用户去理解以及操作,而且新型的基于属性图模型开发的图形数据库在处理关联数据的领域中具有明显的优势,其高效的检索匹配能力以及对于关联数据的匹配算法都可以帮助研究人员开发出简易的探寻方法。利用图数据库进行 RDF 数据探寻,是一个新型的 RDF 探寻领域。

发明内容

为了解决 RDF 探寻过程中数据冗余的问题,以及降低普通用户探寻 RDF 数据的难度,本发明提出了一种基于图形数据库Neo4j的RDF数据探寻方法。

本发明为解决其技术问题采用如下技术方案:

一种基于图形数据库 Neo4j的RDF数据探寻方法,包括如下步骤:

(1)提出了将 RDF 模型转化为属性图模型,并将 RDF 数据持久化到图形数据库Neo4j 中的方法;

(2)整合了 RDF 中匿名节点,空白链接以及等价实例的数据,简化其中的数据展示形式;

(3)提出了通过构建查询属性图的方式去探寻 RDF 数据集中的内容;

(4)提出了将查询属性图转化为图形数据库 Neo4j 的查询语言 Cypher 的方法。

所述步骤(1)中提出的将 RDF 模型转化为属性图模型的具体规则,分为以下3个步骤:

(1.1)具有唯一标识符 IRI(Internationalized Resource Identifiers,国际化资源标识符)的资源将被转化为属性图模型中的节点;

(1.2)三元组中的字符串、数值、日期的非资源型宾语转化为对应主语节点中的属性存储到主语节点的属性表中;

(1.3)三元组当中主语与资源型宾语所关联的谓语转化为对应主语节点与宾语节点所关联的关系。

所述步骤(2)中提到的整合数据的方法,分为以下3个步骤:

(2.1)对于数据集中的空白节点,将空白节点中所关联的信息整合到上级主语节点的属性表或关系连接中;

(2.2)对于数据集中的空白链接,整合到主语节点的属性表当中;

(2.3)对于数据集中的等价资源,整合到等价节点的属性表当中。

所述步骤(3)中提到的构建查询属性图的方法,分为以下3个步骤:

(3.1)通过类型选择,选择出所构造节点的类型,类型集合的约束限制与数据库中数据类型集合的约束一致;

(3.2)通过步骤(3.1)中所选的类型集合构造出具体的节点属性表,对具体的属性进行填写,字符串类型的属性支持正则表达式;

(3.3)通过步骤(3.1)与步骤(3.2)构造出构成查询属性图中的所有节点,并节点之间创建相关的关系,相关关系的约束与数据库节点的类型以及关系的约束一致。

所述步骤(4)中提到的查询属性图转化为图形数据库 Neo4j 的查询语言 Cypher的方法,分为以下3个步骤:

(4.1)根据步骤(3)中所构造的查询属性图,其中节点的类型以及属性根据数据库中结点类型以及属性的数量按照数量少的优先排列的规则去构建 Cypher 语言中的节点;

(4.2)根据查询属性图中节点之间关系,以步骤(4.1)中产生的节点的类型和属性计算对应节点的权重,优先匹配数量少且具体的节点,从而构建 Cypher 语言中节点之间的关系;

(4.3)根据查询属性图中所指定的节点模式或路径模式构造出最终的Cypher 查询语句,节点模式则添加围绕目标节点的周边节点的匹配信息,路径模式则添加整个查询属性图的路径信息。

本发明的有益效果如下:

本发明创造性地利用图形数据库 Neo4j 对 RDF 数据集进行探寻,精简了 RDF数据的组织形式,提高了探寻过程中的效率,并且降低了普通用户探寻 RDF 数据集的难度。

附图说明

图1为基于本发明所构建系统的架构图。

图2为查询属性图的构造界面。

图3为探寻数据的展示界面。

具体实施方式

为了使本领域技术人员更好地理解本发明中的技术问题、技术方案和技术效果,下面结合附图和文档对本发明作进一步详细说明。

本发明是基于图数据库 Neo4j 对 RDF 数据进行探寻的方法,其主要的流程如附图 1所示,首先将 RDF 数据转化为属性图并持久化到 Neo4j 中,用户在所提供的查询界面中构建查询属性图,如附图 2 所示,系统将用户提交的查询属性图转化为 Cypher(Neo4j 中的查询语言)并查找出关联数据,最后返回到展示界面。在附图 2 中,A模块为添加、切换以及删除所要探寻的 RDF 数据集文件,B 模块为节点类型创建模块,C 模块为所创建节点的属性表填写模块,D和E模块为节点之间的关系创建模块,F模块为探寻模式切换模块,G 模块为属性表定制模块。如附图 3 所示,该图所展示的为展示给用户的结果属性图,里面所包含的数据与用户构造的查询属性图匹配,其中 A 所指的是所要查询的目标节点,以深色节点标注,B所指的是与目标节点有联系的周边节点,以浅色节点标注,C 为鼠标悬停于节点上所展示的该节点的属性表,D则是历史记录查询模块,E 是属性过滤模块,F则是节点深入探寻的模块。

1.将 RDF 数据转化为属性图数据

为了利用图形数据库对关联数据的快速匹配以及查询图形数据的算法,本发明基于以下步骤将 RDF 数据模型转化为属性图模型持久化到 Neo4j 中:

(1)将 RDF 数据集当中的非空白资源存储为属性图中的节点;

(2)标识资源所属类型的三元组,将该类型作为主语节点的标签;

(3)三元组中的非资源型宾语作为属性存储在主语节点的属性表当中;

(4)对于三元组中的资源型宾语,建立主语节点与宾语节点之间的关系,关系类型为三元组中谓语的值。

其中根据以下规则整合 RDF 模型中用户所不便于理解的数据,从而起到减少整个图形规模以及简约展示的作用:

(1)整合资源型空节点的信息,与上级主语节点建立关系;

(2)整合非资源型空节点的信息,作为上级主语节点的属性存储于属性表中;

(3)整合空白链接的信息,作为主语节点的属性存储于属性表中;

(4)整合等价节点的信息,作为主语节点的属性存储于属性表中。

2.构建查询属性图

当用户开始对 RDF 数据集进行探寻,用户将在附图 2 所示的查询界面构造查询属性图,构造查询属性图的步骤如下:

(1)在类型选择界面选取所创建节点的类型,可以选取多个类型,但类型之间具有约束,数据集中不存在包含该多个类型的节点,则该类型集中的类型不可共存;

(2)根据所选取的节点类型,生成节点的属性表,可以在属性表中限定节点的具体信息,信息中可包含范围信息以及模糊信息,也可以不填写,则代表该类型节点没有属性的限定;

(3)可以通过以上(1)和(2)步骤重复创建属性图中所需要的属性节点;

(4)双击某个节点即可显示根据该节点类型生成的关系表,可以选择关系然后在其他节点中单击生成两个节点间的关系,两个节点间的关系根据节点的类型具有限制,该限制会根据数据集中是否存在两个具体类型的节点由关系所关联而决定关系的创建,关系也可以选择模式匹配项,则表示匹配两个节点之间存在的所有关系,可限制关系路径中的节点数;

(5)根据具体的需求选取节点模式或者路径模式,也可以定制类型节点的属性表样式,过滤掉不感兴趣的属性项,最终提交所创建的查询属性图。

3.查询属性图与 Cypher 间的转化

系统将步骤 2 中得到的查询属性图转化为图形数据库Neo4j的查询语言Cypher,并根据相应的查询语言查询出的数据组装成模型图的形式返回到可视化界面当中,如附图3所示。用户可以根据系统所提供的可视化操作对属性图进行再探寻任务。其中可视化操作包括:查询节点的属性表,双击节点查询以该节点为中心生成的子图,根据属性过滤节点,查询历史的功能。

相关技术
  • 基于图形数据库Neo4j的RDF数据探寻方法
  • 一种基于neo4j图形数据库自动提取网页正文内容的方法
技术分类

06120112533045