Plus one to Shawn's method below. I'm using that method in production right now and on occasion there's only a small blip of queued queries while the alias is in the process of swapping.
Thanks, Greg On Jun 15, 2014, at 10:36 AM, Shawn Heisey <s...@elyograg.org> wrote: > On 6/14/2014 1:29 PM, Branham, Jeremy [HR] wrote: >> We are looking to move from legacy master/slave configuration to the cloud >> configuration. >> >> In the past we have handled rebuilding cores by using a 'live' core and a >> core for performing the rebuild on. >> When a rebuild is complete, we swap the rebuilt core with the live core. >> >> Is this still a good way to do offline rebuilding when using cloud? >> >> Full re-indexing on our largest index only takes 25 min. > > Walter has already replied, but I have one thing to add: > > "Swapping" does not exist for SolrCloud, but there is a workaround. It > is accomplished in SolrCloud through collection aliasing. What you do > is create two entire collections. If your application will use a > collection named "frobozz" then you might create "frob_0" and "frob_1" > as the actual collection names. You have an alias from frobozz to > frob_0 ... when you want to rebuild, you clear frob_1 and build the new > collection there. Then when it's done, you change the alias to point at > frob_1. > > Note that I am saying collection -- not core. If your collections are > distributed, you will not be able to rebuild just one shard, you'll have > to rebuild the entire thing. > > Aliases can point at multiple collections, but if you want them to work > for index updates as well as queries, then you need to point them at a > single collection. > > Thanks, > Shawn >