[openbeos] OT Re: Re: Tracker icons

On 2005-07-25 at 16:18:23 [+0200], Helmar Rudolph <news@xxxxxxxxxxxxxx> 
wrote:
> Again, they are doing this in order to speed things up, probably
> because if you query properly, most of your results are to be found
> in the first iteration anyway. This I presume is also why SQL has a
> LIMIT command. As I said above, even if you need more than 50
> results/items, by the time you've perused the list, the (slow)
> Tracker could have retrieved and cached the next chunk. Just a
> thought, though, nothing else, but usually the solutions are much
> simpler than we want to believe.

Actually Jonas provided a good example of possible optimisations for 
Tracker.

Your reference to SQL is both technically incorrect and invalid. LIMIT only 
affects the number of results returned from a query which will be completed 
in *full* in any case everytime you make the call. So speed is dependent on 
the SQL optimiser of the RDBMS and the ability to cache the query and 
results. What you might want are result sets which are persistent and do 
not require the query to be completed each time and are kind of by 
definition within a single transaction.

But it is wrong to compare Tracker to SQL because it is doing something 
different; for a start it is continually monitoring a folder or query to 
update it when necessary and this incurs an overhead which we're happy with 
as live queries are so damn useful. Getting an unsorted list of files is 
easy-peasy, lemon-squeezy and incredibly fast. But there have been PhD's 
written about which sorting algorithm's are the most efficient and when to 
use them.

But this is all hopelessly off-topic. The point I want to make is: if you 
want to make technical comparisons then make sure you get your facts right 
first.

Charlie

Other related posts: