[ 
https://issues.apache.org/jira/browse/HBASE-6230?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13407357#comment-13407357
 ] 

Matteo Bertozzi commented on HBASE-6230:
----------------------------------------

I think that the 3 foundamental blocks for restore are:
 * Restore Table - restore <snapshot name> 
 * Clone Table - clone <snapshot name> <table name> [readonly]
 * Export snapshot - hbase o.a.h.h.mapreduce.ExportSnapshot <snapshot name> 
<address>

On top of these operation you can create all the tools that you want to allow 
to allow the user to restore just a piece of data, show the difference between 
snapshot A, snapshot B and the original table, and so on...

h5. Restore Table
Given a "snapshot name" restore override the original table with the snapshot 
content.
Before restoring a new snapshot of the table is taken, just to avoid bad 
situations.
(If the table is not disabled we can keep serving reads)

This allows a full and quick rollback to a previous snapshot.

h5. Clone Table
Given a "snapshot name" a new table is created with the content of the 
specified snapshot. 

This operation allows:
 * To have an old version of the table in parallel with the current one.
 ** Look at snapshot side-by-side with the "current" before making the decision 
whether to roll back or not
 * To Restore only "individual items" (only some small range of data was lost 
from "current")
 ** MR job that scan the cloned table and update the data in the original one. 
(Partial restore of the data)
 * if the table is not marked as read-only
 ** To Add/Remove data from this table without affecting the original one or 
the snapshot.

h5. Export Snapshot
Copy the "snapshot name" to the specified cluster. This will be more or less a 
distcp of the snapshot folder. And allows you to copy a snapshotted table 
without going through CopyTable. After this operation the snapshot will be 
visible with "list_snapshot" and can be restored or cloned.
                
> [brainstorm] "Restore" snapshots for HBase 0.96
> -----------------------------------------------
>
>                 Key: HBASE-6230
>                 URL: https://issues.apache.org/jira/browse/HBASE-6230
>             Project: HBase
>          Issue Type: Brainstorming
>            Reporter: Jesse Yates
>            Assignee: Matteo Bertozzi
>
> Discussion ticket around the definitions/expectations of different parts of 
> snapshot restoration.  This is complementary, but separate from the _how_ of 
> taking a snapshot of a table.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to