1

I am using membase 1.7.1 server cluster of 3 machines (vbuckets only), and would like to be able to back up the contents for the -- presumably unlikely -- case that the entire cluster goes down.

I periodically get new data from my provider; I want to keep the old data around more or less indefinitely, and add the new data. Imagine a wine rating application. New vintages come in all the time, but I need to keep the old ones around.

Currently I have a process which does the following:

  • Download some data from 3rd party provider
  • Push data into my vbucket; some old data may be overwritten, some data will be new
  • Hang out until next data update; other processes will be reading the data

What I'd like to do is:

  1. See if my bucket has any data in it
  2. If it doesn't, load from offline storage (see step #5)
  3. Download some data from 3rd party provider
  4. Push data into my vbucket; some old data may be overwritten, some data will be new
  5. Take dump of all data into offline storage
  6. Hang out until next data update; other processes will be reading the data

Steps 1,2, 5 are new.

So the question is about step #5. Is TAP protocol a good way to dump out the contents of my membase bucket? Will it interfere with readers?

akaioi
  • 265
  • 4
  • 13

1 Answers1

0

The membase documentation recommends the mbbackup tool for backup, which is invoked manually from command-line outside of your application. The data dumped can be restored via mbrestore. The target of mbrestore can be a cluster that's different from the original cluster you ran mbbackup on.

Reference: http://www.couchbase.org/wiki/display/membase/Membase+Server+version+1.7.1+and+up

If you're on AWS, you can run membase on EBS and have the option of snapshotting the EBS volumes over to Amazon S3 periodically.

Reference: http://couchbase.org/forums/thread/correct-way-back-aws-membase-ebs

jgozali
  • 11
  • 2