Hi Bart,

It would be interesting to see the compiler statistics for running this 
sequence of queries which can be obtained by running the command:

        exp_stat_to_file ('stat.dv');

as detailed at:

        
http://virtuoso.openlinksw.com/dataspace/doc/dav/wiki/Main/VirtQueryOptDiagnostic

which should show how the query plan changes when the 100th executions are 
occurring and the query is taking seconds to complete.

If you provide the exported "stats.dv" file this can be imported into a local 
Virtuoso instance for analysis by development ...

Best Regards
Hugh Williams
Professional Services
OpenLink Software, Inc.      //              http://www.openlinksw.com/
Weblog   -- http://www.openlinksw.com/blogs/
LinkedIn -- http://www.linkedin.com/company/openlink-software/
Twitter  -- http://twitter.com/OpenLink
Google+  -- http://plus.google.com/100570109519069333827/
Facebook -- http://www.facebook.com/OpenLinkSoftware
Universal Data Access, Integration, and Management Technology Providers

On 1 Sep 2014, at 13:39, Bart Vandewoestyne <bart.vandewoest...@telenet.be> 
wrote:

> Hello list,
> 
> I have a SPARQL query file with the following structure:
> 
> PREFIX disq: <http://foo/bar#>
> SELECT ?id ?label ?term ?type
> WHERE
> {
>   {
>     ?id disq:preferredLabel ?label ;
>         disq:hasSearchTerm ?term ;
>         a ?type
>     FILTER (?id in ( <id1>, <id2>, ..., <id4094> ))
>   }
>   UNION
>   {
>     ?id disq:preferredLabel ?label ;
>         disq:hasSearchTerm ?term ;
>         a ?type
>     FILTER (?id in ( <id4095>, ..., <id6000> ))
>   }
> }
> 
> (so the first FILTER statement filters 4094 ID's, the second one filters 
> from ID 4095 up to ID 6000.
> 
> I'm running this query against the following version of Virtuoso:
> 
> 'Version 07.10.3209-pthreads for Linux as of May 27 2014'
> 
> using curl like this:
> 
>   curl --silent -S \
>        -w "%{time_total}\n" \
>        -H 'Accept: text/csv' \
>        -F "query=@myquery.rq" \
>        http://myserver:8890/sparql
> 
> I was checking if the time it takes for the above query is quite 
> constant, so therefore I repeat the curl command 1000 times and I look 
> at the time that curl reports me.  The resulting graph is online at
> 
> https://plus.google.com/photos/108476541542561906992/albums/6054059571162128769?authkey=CJjRirrc7_6iQQ
> 
> As one can see in the graph, most of the time, the query takes about 1 
> second to execute.  However, at about each 100 query executions, the 
> query takes somewhere between 3 and 7 seconds.
> 
> I was wondering why I see this behaviour.  Why does the query 'suddenly' 
> take much more time than usual?  Is this expected behaviour that is the 
> result of Virtuoso internals?  Could it be some other phenomenon that is 
> more OS or network specific?
> 
> If anybody has a (possible) explanation for this, or knows of extra 
> (monitoring?) tests I can do to gain more insight, I would be glad to hear!
> 
> Kind regards,
> Bart
> 
> ------------------------------------------------------------------------------
> Slashdot TV.  
> Video for Nerds.  Stuff that matters.
> http://tv.slashdot.org/
> _______________________________________________
> Virtuoso-users mailing list
> Virtuoso-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/virtuoso-users


------------------------------------------------------------------------------
Slashdot TV.  
Video for Nerds.  Stuff that matters.
http://tv.slashdot.org/
_______________________________________________
Virtuoso-users mailing list
Virtuoso-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/virtuoso-users

Reply via email to