La forma más sencilla de cargar dbpedia en Neo4j es utilizar la biblioteca dbpedia4neo. Esta es una biblioteca de Java, pero no necesita saber nada de Java porque todo lo que necesita hacer es ejecutar el ejecutable.
Puede volver a escribir esto en JRuby si lo desea, pero Ruby regular no funcionará porque se basa en Blueprints, una biblioteca de Java sin equivalente de Ruby.
Aquí están los dos archivos de clave, que proporcionan el procedimiento de carga.
- https://github.com/oleiade/dbpedia4neo/blob/master/src/main/java/org/acaro/dbpedia4neo/inserter/DBpediaLoader.java
- https://github.com/oleiade/dbpedia4neo/blob/master/src/main/java/org/acaro/dbpedia4neo/inserter/TripleHandler.java
Aquí es una description of what's involved.
Blueprints está traduciendo los datos RDF a una representación gráfica. Para comprender lo que ocurre bajo el capó, consulte Blueprints Sail Ouplementation:
Después de descargar los archivos de volcado de dbpedia, debe poder compilar la biblioteca de Java dbpedia4neo y ejecutarla sin modificar el código de Java.
En primer lugar, clonar tenedor del oleiade del repositorio GitHub y cambiar al directorio dbpedia4neo
:
$ git clone https://github.com/oleiade/dbpedia4neo.git
$ cd dbpedia4neo
(tenedor de Oleiade incluye una actualización de planos menores que hace sail.initialize();
Ver https://groups.google.com/d/msg/gremlin-users/lfpNcOwZ49Y/WI91ae-UzKQJ).
Antes de compilarlo, deberá actualizar el pom.xml
para usar versiones más actuales de Blueprints y el repositorio actual de Blueprints (Sonatype).
Para ello, abra pom.xml
y en la parte superior de la sección dependencies
, cambie todas las versiones Tinkerpop Modelos 0.6
-0.9
.
Mientras está en el archivo, añadir el repositorio Sonatype a la sección repositories
al final del archivo:
<repository>
<id>sonatype-nexus-snapshots</id>
<name>Sonatype Nexus Snapshots</name>
<url>https://oss.sonatype.org/content/repositories/releases</url>
</repository>
Guardar el archivo y luego construirlo utilizando Maven:
$ mvn clean install
Esto descargará e instalará todas las dependencias por usted y creará un archivo jar en el directorio target
.
Para cargar DBpedia, experta utiliza para ejecutar el ejecutable:
$ mvn exec:java \
-Dexec.mainClass=org.acaro.dbpedia4neo.inserter.DBpediaLoader \
-Dexec.args="/path/to/dbpedia-dump.nt"
El vertedero DBpedia es grande por lo que este tomará un tiempo para cargar.
Ahora que se cargan los datos, puede acceder a la gráfica de una de dos maneras:
- Uso JRuby y la API de Planos-Neo4j directamente.
- Uso de Ruby regular y el servidor Rexster REST, que es similar a Neo4j servidor excepto que soporta múltiples bases de datos de gráficos.
Para ver un ejemplo de cómo crear un cliente Rexster, vea Bulbos, un framework de Python que escribí y que admite Neo4j Server y Rexster.
Otro enfoque para todo esto sería para procesar la DBpedia RDF archivo de volcado en Ruby, escribir los nodos y las relaciones a un archivo CSV, y use el Neo4j batch importer para cargarlo. Pero esto requerirá que traduzca manualmente los datos de RDF a las relaciones de Neo4j.
Otro vínculo para los nuevos documentos neo4j.rb: https://github.com/andreasronge/neo4j/wiki –