Martin Holz wrote:

> I see one problem with the source concept, if you are retrieveing lots of 
> resources from the same collection. There are three steps to
> get a resource from xindice;
> 
> 1) register database
> 2) get collection
> 3) get document
> 
> Typical performance numbers are: 
> 1) Need  158.0 ms for Database.
> 2) Need 1962.0 ms for Collection.  
> 3) Need 294.0 ms for Document.
> 
> Time for 1) drops dramatically after the first call.
> Time for 3) is unavoidable. Time for creating a collection drops too, if you 
> call it more than once, but is still high. So you want to keep the collection 
> open, if you need to get documents  from this collection  often.  
> 
> You could configure a generator  to cache a collection.
> That does not work with current implementation,  but it would be straight 
> forward to add.  I can't see, how to add this capability to the source URL.

Impressive numbers. AFAIK there is somewhere in the dbXML/Xindice 
repositories some skeletal code for "collection pooling". This can be a 
good start, if this approach works (and I don't see why it shouldn't), 
then it would be trivial to patch XMLDBSourceImpl or (better yet, thanks 
Avalon :)) write another implementation which is "collection pool" 
oriented: this might boost the Xindice performance and it would be 
feasible even with a Source since it's all about Source internals.

Hmm... I'll think about it.

Ciao,

-- 
Gianugo Rabellino


---------------------------------------------------------------------
Please check that your question has not already been answered in the
FAQ before posting. <http://xml.apache.org/cocoon/faqs.html>

To unsubscribe, e-mail: <[EMAIL PROTECTED]>
For additional commands, e-mail: <[EMAIL PROTECTED]>

Reply via email to