0x9*_*x90 10 nlp ruby-on-rails jruby neo4j dbpedia
我想用dBpedia用neo4j的ontop的ruby on rails.
假设我已经安装了neo4j并下载了一个dBpedia数据集.
如何将dbpedia数据集导入neo4j?
将dbpedia加载到Neo4j的最简单方法是使用dbpedia4neo库.这是一个Java库,但您不需要知道任何Java,因为您需要做的就是运行可执行文件.
如果你愿意的话,你可以在JRuby中重写它,但是常规Ruby不能工作,因为它依赖于Blueprints,一个没有Ruby等价物的Java库.
以下是两个提供加载过程的密钥文件.
以下是对所涉及内容的描述.
蓝图正在将RDF数据转换为图形表示.要了解幕后发生的事情,请参阅Blueprints Sail Ouplementation:
下载dbpedia转储文件后,您应该能够构建dbpedia4neo Java库并在不修改Java代码的情况下运行它.
首先,克隆GitHub存储库的oleiade的fork并切换到dbpedia4neo目录:
$ git clone https://github.com/oleiade/dbpedia4neo.git
$ cd dbpedia4neo
Run Code Online (Sandbox Code Playgroud)
(Oleiade的分支包含一个次要的蓝图更新,sail.initialize();请参阅 https://groups.google.com/d/msg/gremlin-users/lfpNcOwZ49Y/WI91ae-UzKQJ).
在构建之前,您需要更新pom.xml以使用更多当前的Blueprints版本和当前的Blueprints存储库(Sonatype).
要执行此操作,请打开pom.xml并在该dependencies部分的顶部,将所有TinkerPop蓝图版本从0.6更改为0.9.
当您在文件中时,将Sonatype存储库添加到repositories文件末尾的部分:
<repository>
<id>sonatype-nexus-snapshots</id>
<name>Sonatype Nexus Snapshots</name>
<url>https://oss.sonatype.org/content/repositories/releases</url>
</repository>
Run Code Online (Sandbox Code Playgroud)
保存文件,然后使用maven构建它:
$ mvn clean install
Run Code Online (Sandbox Code Playgroud)
这将为您下载并安装所有依赖项,并在target目录中创建一个jar文件.
要加载dbpedia,请使用maven运行可执行文件:
$ mvn exec:java \
-Dexec.mainClass=org.acaro.dbpedia4neo.inserter.DBpediaLoader \
-Dexec.args="/path/to/dbpedia-dump.nt"
Run Code Online (Sandbox Code Playgroud)
dbpedia转储很大,因此加载需要一段时间.
现在加载了数据,您可以通过以下两种方式之一访问图表:
有关如何创建Rexster客户端的示例,请参阅Bulbs,我编写的支持Neo4j Server和Rexster的Python框架.
所有这些的另一种方法是在Ruby中处理dbpedia RDF转储文件,写出节点和与CSV文件的关系,并使用Neo4j批处理导入程序加载它.但这需要您手动将RDF数据转换为Neo4j关系.