You are viewing a plain text version of this content. The canonical link for it is here.
Posted to slide-dev@jakarta.apache.org by Guido Casper <gc...@s-und-n.de> on 2004/07/20 12:46:13 UTC

Clustering question

After switching "cache-mode" to "cluster" (JDBCStore with 
MySqlRDBMSAdapter) my application experienced a 10-fold performance 
degration. Now I'm considering alternative clustering options :-) like 
having the primary server's "cache-mode" set to "full" and (at least) 
one secondary server's "cache-mode" set to "cluster". All modifications 
go through the primary and the secondary picks up all changes so that 
both servers always deliver uptodate query results. Does that work at all?

Now the secondary server should take the DASL load. It must cover 
queries on properties and full text queries as well.

I think there are 2 possible solutions:

*leveraging the database's (like MySQL's for instance) full text 
indexing capabilities. For this a special version of MySqlRDBMSAdapter 
would have to be written, overwriting storeRevisionContent etc. to put 
certain resourcetypes (text/*) into LONGTEXT columns instead of 
LONGBLOB. And create a corresponding RDBMSTextContainsExpression.

*sharing a Lucene index between instances of Slide

I'm asking for opinions if and how doable either of these is and if I'm 
overlooking something for the first option.

Thanks
Guido

---------------------------------------------------------------------
To unsubscribe, e-mail: slide-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: slide-dev-help@jakarta.apache.org


Re: Clustering question

Posted by Unico Hommes <un...@hippo.nl>.
Oliver Zeigermann wrote:

> Guido Casper wrote:
>
>> After switching "cache-mode" to "cluster" (JDBCStore with 
>> MySqlRDBMSAdapter) my application experienced a 10-fold performance 
>> degration. Now I'm considering alternative clustering options :-) like 
>
>
> I am surprised by the factor 10, but the cluster mode more or less 
> works but not caching parts that may result in inconsisten data. This 
> slows things down of course...
>
>> having the primary server's "cache-mode" set to "full" and (at least) 
>> one secondary server's "cache-mode" set to "cluster". All 
>> modifications go through the primary and the secondary picks up all 
>> changes so that both servers always deliver uptodate query results. 
>> Does that work at all?
>
>
> I guess it does. The best way would be to use notifications to 
> information the cluster nodes of each others changes and stick to full 
> caching. There was this other thread in which we were discussing this. 
> The event and notification stuff by Daniel could be useful for this.
>
>> Now the secondary server should take the DASL load. It must cover 
>> queries on properties and full text queries as well.
>>
>> I think there are 2 possible solutions:
>>
>> *leveraging the database's (like MySQL's for instance) full text 
>> indexing capabilities. For this a special version of 
>> MySqlRDBMSAdapter would have to be written, overwriting 
>> storeRevisionContent etc. to put certain resourcetypes (text/*) into 
>> LONGTEXT columns instead of LONGBLOB. And create a corresponding 
>> RDBMSTextContainsExpression.
>
>
> For me this sounds like the way to go. Please contribute your solution 
> to the Slide community afters (if possible)!
>
>

On the other hand the distributed lucene index is the more portable 
solution. Applicable to other stores than the RDBMSStore. But doing it 
in the database is probably the simpler solution.

--
Unico


---------------------------------------------------------------------
To unsubscribe, e-mail: slide-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: slide-dev-help@jakarta.apache.org


Re: Clustering question

Posted by Oliver Zeigermann <oz...@c1-fse.de>.
Guido Casper wrote:

> After switching "cache-mode" to "cluster" (JDBCStore with 
> MySqlRDBMSAdapter) my application experienced a 10-fold performance 
> degration. Now I'm considering alternative clustering options :-) like 

I am surprised by the factor 10, but the cluster mode more or less works 
but not caching parts that may result in inconsisten data. This slows 
things down of course...

> having the primary server's "cache-mode" set to "full" and (at least) 
> one secondary server's "cache-mode" set to "cluster". All modifications 
> go through the primary and the secondary picks up all changes so that 
> both servers always deliver uptodate query results. Does that work at all?

I guess it does. The best way would be to use notifications to 
information the cluster nodes of each others changes and stick to full 
caching. There was this other thread in which we were discussing this. 
The event and notification stuff by Daniel could be useful for this.

> Now the secondary server should take the DASL load. It must cover 
> queries on properties and full text queries as well.
> 
> I think there are 2 possible solutions:
> 
> *leveraging the database's (like MySQL's for instance) full text 
> indexing capabilities. For this a special version of MySqlRDBMSAdapter 
> would have to be written, overwriting storeRevisionContent etc. to put 
> certain resourcetypes (text/*) into LONGTEXT columns instead of 
> LONGBLOB. And create a corresponding RDBMSTextContainsExpression.

For me this sounds like the way to go. Please contribute your solution 
to the Slide community afters (if possible)!

Cheers,

Oliver

---------------------------------------------------------------------
To unsubscribe, e-mail: slide-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: slide-dev-help@jakarta.apache.org