Re: [basex-talk] xquery result limit

2016-11-12 Thread Christian Grün
I agree. Edits in our Wiki are welcome as well. On Sat, Nov 12, 2016 at 4:45 PM, George Sofianos wrote: > These tips are great. I'm working with XQuery for over a year and I'm > learning things every day. It would also be nice to have a wiki page with > performance tips,

Re: [basex-talk] xquery result limit

2016-11-12 Thread George Sofianos
These tips are great. I'm working with XQuery for over a year and I'm learning things every day. It would also be nice to have a wiki page with performance tips, as these things are hard to find ;) Have a nice weekend, George As I overlooked in your last example, you did not use 'order by'.

Re: [basex-talk] xquery result limit

2016-11-11 Thread Christian Grün
As I overlooked in your last example, you did not use 'order by'. Without sorting, only the number of requested results will be created, no matter if you use the GUI or work on command-line. The most prominent example of this is the following query (which would be extremely slow and memory

Re: [basex-talk] xquery result limit

2016-11-11 Thread Liam R. E. Quin
On Fri, 2016-11-11 at 19:01 +0200, George Sofianos wrote: > So If I get it right, when I use [position() = 1 to 100], only the > first 100 results are calculated? or all 900.000 rows are calculated, > and I get the first 100 results? (imagine it is a complex query) Note that an order by clause

Re: [basex-talk] xquery result limit

2016-11-11 Thread Christian Grün
> So If I get it right, when I use [position() = 1 to 100], only the first 100 > results are calculated? or all 900.000 rows are calculated, and I get the > first 100 results? (imagine it is a complex query) All elements will be created, but only the first 100 will need to be cached in the GUI.

Re: [basex-talk] xquery result limit

2016-11-11 Thread George Sofianos
No problem! I am just asking because large results in the query will first be cached before they are displayed in the GUI. On command-line, single items will be iteratively output as soon as possible. As a consequence, outputting zour 900,000 rows shouldn’t cause additional overhead on

Re: [basex-talk] xquery result limit

2016-11-11 Thread Christian Grün
> I'm testing the scripts on GUI, I don't really use command line. I also run > them on a basexhttp instance. > I will check it out, however I like to keep the scripts as close to the > xquery spec as possible. No problem! I am just asking because large results in the query will first be cached

Re: [basex-talk] xquery result limit

2016-11-11 Thread George Sofianos
Do you run the query in the GUI or on command-line? For even better performance, I recommend you to have a look at the following HOF function: http://docs.basex.org/wiki/Hof_Module#hof:top-k-by I'm testing the scripts on GUI, I don't really use command line. I also run them on a

Re: [basex-talk] xquery result limit

2016-11-11 Thread Christian Grün
> Hi, thanks for quick reply. I'm more interested on the memory consumption > and execution speed. I have a result of about 90 rows and it looks like > limiting the result like that also helps on the performance aspect. But I'm > not sure about that. Is the whole result saved in memory then

Re: [basex-talk] xquery result limit

2016-11-11 Thread Christian Grün
> Hi, I've found this very good answer to limiting results in xquery. > http://stackoverflow.com/a/8900472/1951487 > I like that it works, but I was wondering if you can explain what happens in > the background? Hm… What do you want to know exactly? ;) What does our query processor? How does

[basex-talk] xquery result limit

2016-11-11 Thread George Sofianos
Hi, I've found this very good answer to limiting results in xquery. http://stackoverflow.com/a/8900472/1951487 I like that it works, but I was wondering if you can explain what happens in the background? Thanks, George