Help with local restore for dev enviroment

Shane McEwan shane at mcewan.id.au
Wed Jul 10 07:05:08 EDT 2013


On 09/07/13 22:24, Mark Wagner wrote:
> Hey all,
>
> I'm new to riak and I'm working on an ETL script that needs to pull data
> from a riak cluster.
>
> My client has sent me a backup from one of their cluster nodes. bitcask
> data,. rings and config.
>
> *snip*
>
> At this point I believe I should be able to start riak and browse the data.
>    Is this correct?

My suggestion would be to set up Riak and get it running before copying 
over any data. If you're running a cluster get your nodes joined 
together and communicating on the ring. Once you're happy that your Riak 
node(s) are running, shut them down and copy _just_ the bitcask data 
directory from the backup into the correct location for your node(s).

Don't mess with the ring files and don't worry about "reip".

Start up Riak.

Riak is smart enough to find the data you've copied in. If you're 
running a cluster then it's important to copy the correct node's data 
onto the new nodes. It's not straightforward to know which old node 
corresponds to which new node but Riak will cope if you get it wrong. It 
will just hand off partitions to the correct nodes. A bit of trial and 
error allows you to figure out which nodes are equivalent between setups 
to avoid unnecessary handoffs.

(Note: I've only done this with the LevelDB backend but I would expect 
Bitcask to work in much the same way.)

Hope this helps!

Shane.




More information about the riak-users mailing list