Запрос данных Turtle через SPARQL

Я загрузил данные о файлах черепахи из AWS S3 в сервис Neptune.

Теперь я запрашиваю ниже sparql из консоли RDF4J, чтобы просмотреть мои данные в Neptune, но получаю ошибку «скрипт gremlin не предоставлен».

neptune> select ?p ?o { <http://www.1234.com/XXX/App_Inst/1007259> ?p ?o }
select ?p ?o { <http://www.1234.com/XXX/App_Inst/1007259> ?p ?o }
Evaluating SPARQL query...
Query evaluation error: {"requestId":"62b298f5-032e-0d8e-82ac-ed88a1469298","code":"MissingParameterException","detailedMessage":"no gremlin script supplied"}

Не могли бы вы помочь мне решить эту проблему.

Я настроил консоль RDF4J согласно документ, предоставленный AWS.

Если я выполняю тот же запрос из экземпляра Unix EC2, получаю следующие результаты.

[ec2-user@ip-10-10-10-69 ~]$ curl -X POST  --data-binary 'query=select ?p ?o { <http://www.1234.com/XXX/App_Inst/1007259> ?p ?o }'  http://neputne.amazonaws.com:882/sparql

РЕДАКТИРОВАТЬ:

Это результат работы экземпляра EC2 при запуске sparql.

{ "head" : { "vars" : [ "p", "o" ] }, "results" : { "bindings" : [ ] }

person Srinivas Rao    schedule 13.08.2018    source источник
comment
Это результат, полученный из экземпляра EC2 при запуске sparql. {Head: {vars: [p, o]}, results: {bindings: []}   -  person Srinivas Rao    schedule 13.08.2018
comment
Для меня это похоже на то, что возвращенный результат просто пустой   -  person UninformedUser    schedule 13.08.2018
comment
Но я загрузил данные о черепахе в Нептун и получил сообщение об успехе.   -  person Srinivas Rao    schedule 13.08.2018
comment
Ну, я никогда не использовал Нептун, я просто сказал то, что вижу по результату JSON.   -  person UninformedUser    schedule 13.08.2018


Ответы (2)


Из сообщения об ошибке похоже, что ваша консоль RDF4J попадает не в ту конечную точку, попадая в сервер Gremlin вместо конечной точки SPARQL.

Я заметил, что в документации AWS RDF4J вы упомянули, что URL-адрес конечной точки, который они дают в примерах, неудобно оборачивается. Пожалуйста, дважды проверьте, что URL-адрес конечной точки SPARQL, который вы использовали в консоли:

http://your-neptune-endpoint:8182/sparql

и не

http://your-neptune-endpoint:8182
person Jeen Broekstra    schedule 14.08.2018
comment
Спасибо @ Jeen, я изменил свой репозиторий и могу выполнять запросы в консоли RDF4J, но не получаю никаких результатов, он просто показывает нулевые записи, хотя файлы черепахи загружены в Нептун. - person Srinivas Rao; 14.08.2018
comment
Я использовал ниже curl для загрузки данных - person Srinivas Rao; 14.08.2018
comment
Похоже, это другая проблема, чем ошибка скрипта gremlin. Если вы видите ноль результатов, это просто означает, что ваш запрос не соответствует чему-либо в тройном хранилище. Это похоже на то, что вы видите, когда используете curl для выполнения запроса непосредственно в экземпляре EC2. Это означает, что либо ваши данные не загружены должным образом, либо ваш запрос неверен. Поскольку я не знаю, как выглядят ваши данные, я не могу точно определить, в чем проблема. В качестве совета попробуйте очень простой запрос, например select * where { ?s ?p ?o } limit 10, и посмотрите, что вернется. - person Jeen Broekstra; 14.08.2018
comment
Я выполнил приведенный выше образец запроса и показывает, что результат равен нулю. - person Srinivas Rao; 14.08.2018
comment
@SrinivasRao прав, так что скорее всего означает, что в вашем магазине нет данных. Предположительно что-то пошло не так с загрузкой ваших данных. - person Jeen Broekstra; 16.08.2018
comment
Привет, Джин, я выполнил команду curl для загрузки данных и проверил статус загрузки. из статуса идентификатора загрузчика, показывающего результаты, такие как количество каналов, ЗАГРУЗКА ЗАВЕРШЕНО и общие значения статуса, такие как статус завершен, totalrecords: 0, totalduplicate: 0, ................, я не уверен, почему он не выбирает записи черепах из файлов черепах, помещенных в S3. - person Srinivas Rao; 16.08.2018
comment
Я думаю, вам нужно задать новый вопрос по этому поводу, поскольку он на самом деле не связан с проблемой конечной точки gremlin. - person Jeen Broekstra; 16.08.2018
comment
Кто-нибудь сталкивался с этой проблемой, когда записи черепах загружались в Нептун из S3. Моя работа curl выполняется успешно, но загрузка нулевых записей из s3 в Нептун, хотя в файле черепахи много записей - person Srinivas Rao; 16.08.2018
comment
Спасибо, Джин! , опубликует еще один вопрос о том же - person Srinivas Rao; 16.08.2018
comment
Похоже, что-то пошло не так с вашим запросом на массовую загрузку. Если вы еще не поняли это, обратитесь в службу поддержки Neptune. - person The-Big-K; 24.10.2018

Если вы не видите результатов, это определенно означает, что при загрузке данных возникли проблемы. Просмотрите подробный статус загрузки [1] с помощью аргумента запроса details и посмотрите, сможете ли вы выяснить, что произошло с вашим запросом массовой загрузки. Если вы все еще не можете отладить его, я бы порекомендовал обратиться в службу поддержки Neptune, чтобы получить дополнительную информацию.

[1] https://docs.aws.amazon.com/neptune/latest/userguide/load-api-reference-status.html.

person The-Big-K    schedule 24.10.2018