jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stefan Guggisberg <stefan.guggisb...@gmail.com>
Subject Re: Performance of workspace copy
Date Thu, 08 Oct 2009 07:53:07 GMT
On Wed, Oct 7, 2009 at 3:19 PM, sxm <sxm20@yahoo.com> wrote:
>
> thanks Stefan, great suggestions. Could you please comment on [2]
>
> 1. I tried
> org.apache.jackrabbit.core.persistence.bundle.MySqlPersistenceManager, no
> visible performance improvement.

that's hard to believe. can you provide a mysql query log (20-40 lines
would be enough)?

> 2. Binary data: We dont have any binary data. How can we be sure and disable
> the binary properties.

create your own, domain-specific node types.

> 3. We will try dataStore. Although, performance gains may not be significant
> as it appears to be using only two connections for the entire transaction.

if you don't store binary properties, you don't need the DataStore.


cheers
stefan

> 4. Versionability is the basic requirement.
> 5. Switching db also is not an option in short term, we certainly consider
> it for long term solution.
>
> -Shailesh
>
>
> Stefan Guggisberg wrote:
>>
>> hi anonymous,
>>
>> On Wed, Oct 7, 2009 at 1:49 AM, sxm <sxm20@yahoo.com> wrote:
>>>
>>> We have a requirement where we need to copy thousands of child nodes from
>>> one
>>> node to another. This becomes really slow and unusable when no. of nodes
>>> grow from 400 to 2000.
>>>
>>> I tried to caputre mysql query log for one node copy operation. This
>>> looks
>>> awfully big. Does this indicate anything wrong we have in our setup?
>>
>> yes. some suggestions/remarks:
>>
>> - use
>> org.apache.jackrabbit.core.persistence.bundle.MySqlPersistenceManager
>>   instead of
>> org.apache.jackrabbit.core.persistence.db.SimpleDbPersistenceManager;
>>   the former provides a significantly better performance [0].
>> - seems like you store a lot of binary data in your repository. using
>> the DataStore [1]
>>   should help to improve the performance.
>> - all your content seems to be versionable. make sure you do require
>> versionability
>>   of your content as this feature doesn't come for free
>> performance-wise. remove
>>   mix:versionable where you don't need it.
>> - unless you have a strict requirement to use mysql try using an embedded
>> db
>>   such as derby (jackrabbit's default) or e.g. H2. performance with an
>> embedded
>>   db should be much better.
>>
>> cheers
>> stefan
>>
>>
>> [0] http://wiki.apache.org/jackrabbit/PersistenceManagerFAQ
>> [1] http://wiki.apache.org/jackrabbit/DataStore
>>
>>
>
> --
> View this message in context: http://www.nabble.com/Performance-of-workspace-copy-tp25778413p25785431.html
> Sent from the Jackrabbit - Users mailing list archive at Nabble.com.
>
>

Mime
View raw message