Hello All,

This Jira ticket explains my situation well.

After reading through the following paragraph in 
https://jena.apache.org/documentation/query/service.html
Performance Considerations

This feature is a basic building block to allow remote access in the middle of 
a query, not a general solution to the issues in distributed query evaluation. 
The algebra operation is executed without regard to how selective the pattern 
is. So the order of the query will affect the speed of execution. Because it 
involves HTTP operations, asking the query in the right order matters a lot. 
Don't ask for the whole of a bookstore just to find book whose title comes from 
a local RDF file - ask the bookshop a query with the title already bound from 
earlier in the query.

I modified the code to restructure the sequence of call

CONSTRUCT { ?s ?p ?o . ?s ?p <http://localhost/target#Doctor> .}
WHERE {
SERVICE <http://localhost:8084/processor/webresources/rs/sparql>
 { ?s ?p <http://localhost/traleerdf/db#Physician>. ?s ?p ?o . }
 SERVICE <http://localhost:8084/processor/webresources/rs/sparql> { ?s ?p ?o }
 } LIMIT 10

       So, the query which returns minimum no of rows is called first and then 
the second service is executed. This way, the calls to the endpoint are 
drastically reduced.

Thanks for the response

Regards
Kamalraj



On 14 Feb 2014, at 9:07 pm, Olivier Rossel 
<[email protected]<mailto:[email protected]>> wrote:

May be that thread might help:
https://issues.apache.org/jira/browse/JENA-449#comment-13651857httpstatus

Give us your feedback.


On Fri, Feb 14, 2014 at 5:44 AM, Kamalraj Jairam <
[email protected]<mailto:[email protected]>> wrote:

Hello All,

I'm having performance issues with ARQ federated query.

ARQ seems to generate multiple select queries to the endpoints when it
should just send only 2 queries to the respective endpoints

CONSTRUCT { ?s ?p ?o . ?s <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
<http://localhost/target#Doctor> .}
WHERE { SERVICE <http://localhost:8084/processor/webresources/rs/sparql>
{ ?s ?p ?o } SERVICE <
http://localhost:8084/processor/webresources/rs/sparql> { ?s ?p ?o . ?s <
http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <
http://localhost/traleerdf/db#Physician> } }

What am i doing wrong?

regards

Regards,

Kamalraj Jairam
General Manager -  Solutions Development
Semantic Software
www.semanticsoftware.com.au<http://www.semanticsoftware.com.au/><http://www.semanticsoftware.com.au/>
Australian Office: +61-2-9931-7848
Australian Cell: +61-405-203134

Reply via email to