You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by muneeb <mu...@hotmail.com> on 2010/03/19 11:18:40 UTC

Switching cores dynamically

Hi,

I have indexed almost 7 million articles on two separate cores, each with
their own conf/ and data/ folder, i.e. they have their individual index.

What I normally do is, use core0 for querying and core1 for any updates and
once updates are finished i copy the index of core1 to core0's data folder.
I know this isn't an efficient way of doing this, since this brings a
downtime on my search service for a couple of minutes. 

I was wondering if its possible to switch between cores dynamically (keeping
my current setup in mind) in such a way that there is no downtime at all
during switching.

Thanks very much in advance.
-M  
-- 
View this message in context: http://old.nabble.com/Switching-cores-dynamically-tp27950928p27950928.html
Sent from the Solr - User mailing list archive at Nabble.com.


Re: Switching cores dynamically

Posted by Henrib <hb...@gmail.com>.
Hi,
You could (theoretically) reduce the down-time to zero using a 'swap'
command:
http://wiki.apache.org/solr/CoreAdmin?highlight=%28swap%29#SWAP
Cheers
Henrib


muneeb wrote:
> 
> Hi,
> 
> I have indexed almost 7 million articles on two separate cores, each with
> their own conf/ and data/ folder, i.e. they have their individual index.
> 
> What I normally do is, use core0 for querying and core1 for any updates
> and once updates are finished i copy the index of core1 to core0's data
> folder. I know this isn't an efficient way of doing this, since this
> brings a downtime on my search service for a couple of minutes. 
> 
> I was wondering if its possible to switch between cores dynamically
> (keeping my current setup in mind) in such a way that there is no downtime
> at all during switching.
> 
> Thanks very much in advance.
> -M  
> 

-- 
View this message in context: http://old.nabble.com/Switching-cores-dynamically-tp27950928p27950994.html
Sent from the Solr - User mailing list archive at Nabble.com.


Re: Switching cores dynamically

Posted by David Stuart <da...@progressivealliance.co.uk>.
Using a multicore setup should do the trick see  http://wiki.apache.org/solr/CoreAdmin 
  specificly the swap option

Cheers

David Stuart

On 19 Mar 2010, at 10:18, muneeb <mu...@hotmail.com> wrote:

>
> Hi,
>
> I have indexed almost 7 million articles on two separate cores, each  
> with
> their own conf/ and data/ folder, i.e. they have their individual  
> index.
>
> What I normally do is, use core0 for querying and core1 for any  
> updates and
> once updates are finished i copy the index of core1 to core0's data  
> folder.
> I know this isn't an efficient way of doing this, since this brings a
> downtime on my search service for a couple of minutes.
>
> I was wondering if its possible to switch between cores dynamically  
> (keeping
> my current setup in mind) in such a way that there is no downtime at  
> all
> during switching.
>
> Thanks very much in advance.
> -M
> -- 
> View this message in context: http://old.nabble.com/Switching-cores-dynamically-tp27950928p27950928.html
> Sent from the Solr - User mailing list archive at Nabble.com.
>

Re: Switching cores dynamically

Posted by Michael Kuhlmann <mi...@zalando.de>.
On 03/19/10 11:18, muneeb wrote:
> 
> Hi,
> 
> I have indexed almost 7 million articles on two separate cores, each with
> their own conf/ and data/ folder, i.e. they have their individual index.
> 
> What I normally do is, use core0 for querying and core1 for any updates and
> once updates are finished i copy the index of core1 to core0's data folder.
> I know this isn't an efficient way of doing this, since this brings a
> downtime on my search service for a couple of minutes. 

And I wonder why do you need two cores. Why don't you just update the
one and only core, and when you send a commit, Solr automatically make
the changes public?

> 
> I was wondering if its possible to switch between cores dynamically (keeping
> my current setup in mind) in such a way that there is no downtime at all
> during switching.

If you really want to stick with two cores, you maybe should create
symbolic links to your data folders. You then only need to remove and
recreate the links when you want to switch cores. You still have a
downtime, but only for a few milliseconds.