Ludovic Dubost wrote:
> Hi Anca,
> 
> Great analysis. This gives a lot of good information to make the right 
> choice for XWiki Watch.
> 
> I suggest we run with 120000 articles to see the trend of query time for 
> all three methods.
> 
> You should run the tests again with indexes on feed_feedentry  because 
> this can bring good improvements.
> 
> The optimized query for clicking on "All" seems to be still slow (it 
> could be bad with more data).
> 
> We should also test a text search and a tag or keyword search

Done all, and tried to log the results as good as possible despite the 
instability of the results. Everything is available at 
http://watch.xwiki.org/xwiki/bin/view/Development/SpeedingUp , along with some 
details on how the optimisation was made and a couple of observations.

As an overall view, optimised SQL seems to scale pretty well, which, combined 
with the stability, reliability and extensibility of this method, make me +1, 
again, for the optimised SQL.
Along with this, me and Cati have been working (designing / coding) on the new 
Watch interface that would, among other things, localize the loading messages 
so 
that the slow server requests become a lot more transparent to the user.

Happy coding,
Anca Luca

> 
> Ludovic
> 
> Guillaume Lerouge wrote:
>> Hi,
>>
>> I've summarized Anca's findings below (great testing btw ;-) , I bet we
>> should do this more often) :
>>
>> [snip]
>>
>> | Standard SQL | Lucene | Optimized SQL | Winner
>> initial loading of the articles, in a newly started server |  30-40 seconds
>> | up to 20 (15-16) | around 10 | OSQL
>> initial load of the interface, in a non-newly started server | ~15 seconds |
>> ~4-5 on average (but can go up to 10) | 7 | Lucene
>> click on the All group | around 7-8-9 seconds | 1 second | 5 on average,
>> from 3 to 7 | Lucene
>> click on a feed with 1023 articles | 3 seconds | from under a second to a
>> couple seconds | under a second (0.7-0.8) | OSQL
>> pagination navigation | 2-3 seconds | a second on average | 2-3 on average |
>> Lucene
>>
>> As we can see Lucene still has the edge a majority of times, but Optimized
>> SQL comes close in most cases. As far as my understanding of this issue
>> goes, I'd advise going for SQL optimization instead of Lucene for the
>> following reasons :
>>
>>    - It is better suited to handle the highly structured data coming from
>>    XWiki Watch
>>    - It already offers a good performance and could deliver even more if
>>    fully implemented
>>    - It goes in the right way in terms of making the XWiki Watch
>>    distribution on par with other XWiki products (such as XWS & XEM) in terms
>>    of code organization (client-side / server-side)
>>    - The Lucene indexing engine integration with XWiki is still error-prone
>>    - Lucene doesn't work for real-time actions that are used a lot in XWiki
>>    Watch
>>
>> Which is why, on the whole, SQL Optimization seems better than Lucene to me.
>>
>> Please tell me if I've missed something.
>>
>> Guillaume
>>
>>   
> 
> 
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to