很多开源的知识图谱都是RDF格式,如何快速将其导入neo4j?

这里有一个插件,可以帮助我们实现这个功能

具体操作:

一、安装并配置NEO4J

二、下载扩展插件的jar包

地址在这里,注意要选择与neo4j版本相对应的jar版本;并将其放在neo4j安装目录下的/plugins文件夹下

三、修改neo4j的配置文件

neo4j安装目录下的/conf/中的neo4j.conf文件的最后一行添加如下语句。

dbms.unmanaged_extension_classes=semantics.extension=/rdf

四、重启neo4j

注意!!!:以上是教程中所写的常规操作,但是我在实践过程中(neo4j是3.4.X版本,jar包的版本也对应),按以上操作后重启无法打开neo4j的WEB页面。经过一番折腾,最后把第三的配置语句注释掉,可以打开WEB页面。并且后来按以下操作可以正确导入数据

五、验证是否安装成功

在neo4j中输入以下语句,查看是否存在

call dbms.procedures()

六、创建索引

在neo4j中创建索引

CREATE INDEX ON: Resource(uri)
CREATE INDEX ON: URI(uri)
CREATE INDEX ON: BNode(uri)
CREATE INDEX ON: Class(uri)

七、导入数据

1.将目标turtle数据放在neo4j在的import文件夹下
2.在在neo4j中执行以下语句

CALL semantics.importRDF("file:///C:/软件/neo4j-community-3.5.5-windows/neo4j-community-3.5.5/import/dsc.nlp-bigdatalab.org.ttl", "Turtle", {shortenUrls: false})
参数:数据的绝对路径
数据格式:turtle, 即ttl格式
shortenUrls:是否省略url展示

注意:很多RDF数据不符合url的格式要求,会导致数据导入失败。因为需根据报错的提示,将对应数据进行处理。例如,url中不可以包含空格、特殊符号等