Я проверяю запрос SparQL, который работает слишком медленно в моей системе. Очень упрощенно, запрос выглядит так:
# The whole query takes ~20 seconds
SELECT ?baseUri_s1 {
# This takes ~1 second and returns 3000 results
{ SELECT ?baseUri_s1 {
# Here goes some more complex business logic
?baseUri_s1 myOntology:hasProperty1 'myProperty1'
} }
# This takes ~0.1 seconds and returns 1 result
{ SELECT ?baseUri_s2 {
# Here goes some more complex business logic
?baseUri_s2 myOntology:hasProperty2 'myProperty2'
} }
FILTER (?baseUri_s1 = ?baseUri_s2)
}
Итак, если два внутренних выбора занимают менее 1 секунды каждый... Возможно ли, что объединение списка из 3000 URI и другого списка одного URI занимает более 18 секунд? Я что-то упускаю?
SELECT ?s { ?s1 myOntology:hasProperty1 'myProperty1' . ?s1 myOntology:hasProperty2 'myProperty2' }
- но да, если оба подзапроса сложные, это может занять некоторое время. Вопрос в том, сколько времени уже занимает каждый подзапрос. Действительно, мы не знаем ни ваших данных, ни сложных запросов, ни сервера, на котором вы используете тройной магазин. - person UninformedUser   schedule 04.10.2019