如何在ruby-on-rails应用程序的顶部设置带有dBpedia的neo4j?
我试图在轨道上使用ruby上的neo4j的dBpedia.
假设我已经安装了neo4j并下载了dBpedia datasets之一. 如何将dbpedia数据集导入neo4j? 解决方法
将dbpedia加载到Neo4j中的最简单的方法是使用
dbpedia4neo库.这是一个Java库,但您不需要知道任何Java,因为您需要做的只是运行可执行文件.
您可以在JRuby中重写此内容,但是常规的Ruby不能工作,因为它依赖于Blueprints,这是一个没有Ruby等效的Java库. 这是提供加载过程的两个关键文件. > https://github.com/oleiade/dbpedia4neo/blob/master/src/main/java/org/acaro/dbpedia4neo/inserter/DBpediaLoader.java 这是description of what’s involved. Blueprints将RDF数据转换为图形表示.了解发生什么事情,请参阅Blueprints Sail Ouplementation: 下载dbpedia转储文件后,您应该可以构建dbpedia4neo Java库并运行它,而无需修改Java代码. 首先,克隆oleiade的GitHub存储库的fork并更改为dbpedia4neo目录: $git clone https://github.com/oleiade/dbpedia4neo.git $cd dbpedia4neo (Oleiade的分支包含一个小的Blueprints更新,可以执行sail.initialize();请参阅https://groups.google.com/d/msg/gremlin-users/lfpNcOwZ49Y/WI91ae-UzKQJ). 在构建它之前,您将需要更新pom.xml以使用更多当前的蓝图版本和当前的Blueprints存储库(Sonatype). 要做到这一点,打开pom.xml和依赖关系部分的顶部,将所有的TinkerPop Blueprints版本从0.6更改为0.9. 当您在文件中时,将Sonatype存储库添加到文件末尾的存储库部分: <repository> <id>sonatype-nexus-snapshots</id> <name>Sonatype Nexus Snapshots</name> <url>https://oss.sonatype.org/content/repositories/releases</url> </repository> 保存文件,然后使用maven构建它: $mvn clean install 这将下载并安装所有依赖项,并在目标目录中创建一个jar文件. 要加载dbpedia,请使用maven运行可执行文件: $mvn exec:java -Dexec.mainClass=org.acaro.dbpedia4neo.inserter.DBpediaLoader -Dexec.args="/path/to/dbpedia-dump.nt" dbpedia转储很大,所以这需要一段时间才能加载. 现在已经加载了数据,您可以通过以下两种方式之一访问图形: >直接使用JRuby和Blueprints-Neo4j API. 有关如何创建Rexster客户端的示例,请参阅灯泡,我写的支持Neo4j Server和Rexster的Python框架. > http://bulbflow.com/ 所有这一切的另一种方法是在Ruby中处理dbpedia RDF转储文件,将节点和关系写入CSV文件,并使用Neo4j batch importer加载它.但是这将需要您将RDF数据手动转换为Neo4j关系. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |