в отношении экспорта данных Нептуна - PullRequest
0 голосов
/ 27 февраля 2020

Я пытаюсь экспортировать данные Neptune RDF с помощью следующих инструментов.

amazon-neptune-tools / neptune-export at master · awslabs / amazon-neptune-tools https://github.com/awslabs/amazon-neptune-tools/tree/master/neptune-export

Но возникает ошибка.

Ошибка

[ec2-user@bastin neptune-export]$ sh ./bin/neptune-export.sh export-rdf -e neptestdb-cluster.cluster-xxxxxx.ap-northeast-1.neptune.amazonaws.com -d /home/ec2-user/output
Creating statement files

Completed export-rdf in 1 seconds
An error occurred while exporting from Neptune:
java.lang.RuntimeException: java.lang.NullPointerException
    at com.amazonaws.services.neptune.rdf.NeptuneSparqlClient.executeQuery(NeptuneSparqlClient.java:166)
    at com.amazonaws.services.neptune.rdf.io.ExportRdfGraphJob.execute(ExportRdfGraphJob.java:31)
    at com.amazonaws.services.neptune.ExportRdfGraph.run(ExportRdfGraph.java:55)
    at com.amazonaws.services.neptune.NeptuneExportCli.main(NeptuneExportCli.java:54)
Caused by: java.lang.NullPointerException
    at com.amazonaws.services.neptune.rdf.io.EnhancedTurtleWriter.handleStatement(EnhancedTurtleWriter.java:42)
    at com.amazonaws.services.neptune.rdf.NeptuneSparqlClient$2.handleSolution(NeptuneSparqlClient.java:161)
    at org.eclipse.rdf4j.query.resultio.binary.BinaryQueryResultParser.parse(BinaryQueryResultParser.java:192)
    at org.eclipse.rdf4j.query.resultio.AbstractTupleQueryResultParser.parseQueryResult(AbstractTupleQueryResultParser.java:48)
    at org.eclipse.rdf4j.http.client.SPARQLProtocolSession.getTupleQueryResult(SPARQLProtocolSession.java:693)
    at org.eclipse.rdf4j.http.client.SPARQLProtocolSession.sendTupleQuery(SPARQLProtocolSession.java:372)
    at org.eclipse.rdf4j.repository.sparql.query.SPARQLTupleQuery.evaluate(SPARQLTupleQuery.java:55)
    at com.amazonaws.services.neptune.rdf.NeptuneSparqlClient.executeQuery(NeptuneSparqlClient.java:126)
    ... 3 more
[ec2-user@bastin neptune-export]$ 

Процедура следующая.

Команда

1. download tool

git clone https://github.com/awslabs/amazon-neptune-tools.git

2. install mvn for build

sudo wget http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo -O /etc/yum.repos.d/epel-apache-maven.repo
sudo sed -i s/\$releasever/6/g /etc/yum.repos.d/epel-apache-maven.repo
sudo yum install -y apache-maven
mvn --version

3. execute build

cd /home/ec2-user/amazon-neptune-tools/neptune-export
mvn clean install

4. exexute neptune-export.sh
cd /home/ec2-user/amazon-neptune-tools/neptune-export
sh ./bin/neptune-export.sh export-rdf -e https://neptestdb-cluster.cluster-xxxxxxx.ap-northeast-1.neptune.amazonaws.com -d /home/ec2-user/output

Если у вас есть идеи, пожалуйста, свяжитесь с нами. спасибо за сотрудничество.

1 Ответ

3 голосов
/ 02 марта 2020

Спасибо за сообщение об этом. Я обнаружил проблему и обновлю репозиторий позже * сегодня или завтра. Тем временем вы можете заменить строку 42 в EnhancedTutleWriter. java следующим текстом:

Resource context = statement.getContext();
if (context != null){
    prefixes.parse(context.stringValue(), this);
}
...