Yes seeing as it is a sequence of joins I just used our Transform 
implementation to turn it back into a series of OpJoin's

Is there a standard place where you can turn specific optimizations on/off?

Rob

-----Original Message-----
From: Andy Seaborne [mailto:[email protected]] On Behalf Of Andy 
Seaborne
Sent: Wednesday, November 16, 2011 12:18 AM
To: [email protected]
Subject: Re: SPARQL Algebra from Query Validator vs actual Query

On 16/11/11 01:46, Robert Vesse wrote:
> We've noticed that for some queries the SPARQL Query Validator in
> Fuseki will generate different algebra versus the query algebra we
> see when processing it within our query engine.
>
> The particular example we see is certain queries use join (OpJoin) in
> the validator output but sequence (OpSequence) in the actual query
> engine.
>
> I haven't dived into the code yet to take a look at what's going on
> but can anyone tell me quickly whether this is an expected behaviour?
> e.g. does the validator only show the unoptimised algebra

Yes.

See also

arq.qparse --print=op   # Algebra
arq.qparse --print=opt  # Optimized (default config)

If you are writing a query engine, you get to choose what optimizations 
are appropriate to your system.

"sequence" probably isn't suited to the Cray architecture but you can 
implement it as a N-way join.

QueryEngineTDB.modifyOp
QueryEngineMain.modifyOp
Algebra.optimize

        Andy

>
> Cheers,
>
> Rob
>

Reply via email to