Evaluation of multiple SERVICE clauses on Virtuoso

Dear all,

I'm noticed that Virtuoso adopts what I believe to be a very inefficient 
strategy to evaluate a SPARQL query containing multiple SERVICE clauses 
with _independent_ graph patterns (no common variable): each SERVICE 
clause is invoked once for each solution retrieved from previously 
evaluated SERVICE clauses.
This ends up in a very inefficient multiplication of SERVICE 
invocations, although they return the same results each time (since the 
graph patterns are independent).

Has any of you already noticed this behaviour? Would you say this is a 
bug or is there a good reason that I don't catch?

I wanted to post this on a Virtuoso forum but all the URLs I've found 
are dead. I you have a pointer, I would appreciate it.

Thanks for your help.

Note: I'm using the OS edition 7.20.

-- 
signature
 
Franck MICHEL
CNRS research engineer
 +33 (0)492 96 5004
franck.michel@cnrs.fr <mailto:franck.michel@cnrs.fr>

 

Université Côte d’Azur, CNRS- I3S - UMR 7271
930 route des Colles - Bât. Les Templiers
BP 145 - 06903 Sophia Antipolis CEDEX - France
Tel. +33 (0)4 9294 2680, Fax : +33 (0)4 9294 2898

Received on Tuesday, 27 February 2018 17:06:37 UTC