couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stephen Bartell <snbart...@gmail.com>
Subject virtualizing databases
Date Wed, 29 May 2013 01:23:21 GMT
Hi all.  I'm not sure if the subject really is the right terminology for what I'm trying to
do.

What I want to do is maintain a routing table of database:destination pairs, so that on my
couchdb I can name my databases however I want.  I want to virtualize my database names.

I can see how this concept might be the basis for sharding.  So maybe something like this
already exists.  But sharding is not my goal here.  I want to use this mostly for maintenance.
 Oftentimes I need to do some work on a database, like trimming it down or filtering some
stuff out.  This work can take hours and I want the database always available to the end users.
 So for example, I have a database endpoint called "database" which maps to "database_a".
In the background I might begin a filtered replication from "database_a" to "database_b".
 Users can still access "database" while "database_b" is being created.  When the replication
to "database_b" is done, I want to change my proxy table so that requests to "database" now
go to "database_b".  I can now forget about "database_a".

I'm sure many of you guys have run into this kind of thing before.  What would you guys recommend.

Thanks!
Mime
View raw message