[
https://issues.apache.org/jira/browse/HBASE-6353?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Matteo Bertozzi updated HBASE-6353:
-----------------------------------
Description:
h6. hbase shell with snapshot commands
* snapshot <snapshot name> <table name>
** Take a snapshot of the specified name with the specified name
* restore_snapshot <snapshot name>
** Restore specified snapshot on the original table
* clone_snapshot <snapshot name> <table name>
** Create a new table based on the snapshot content
* list_snapshots [filter]
** Show the list of snapshots taken
* delete_snapshot <snapshot name>
** Remove a specified snapshot
* rename_snapshot <snapshot name> <new snapshot name>
** Rename a snapshot to a new name
h6. 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.
This allows a full and quick rollback to a previous snapshot.
h6. Clone from Snapshot
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 Add/Remove data from this table without affecting the original one or the
snapshot.
* 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)
h6. Open points
* Add snapshot type option on take snapshot command (global, timestamp)?
was:
h6. hbase shell with snapshot commands
* snapshot <snapshot name> <table name>
** Take a snapshot of the specified name with the specified name
* restore_snapshot <snapshot name>
** Restore specified snapshot on the original table
* mount_snapshot <snapshot name> <table name> [readonly]
** Load the snapshot data as specified table (optional readonly flag)
* list_snapshots [filter]
** Show a list of snapshots
* delete_snapshot <snapshot name>
** Remove a specified snapshot
h6. 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.
h6. Mount Table (Aka 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.
h6. Open points
* Add snapshot type option on take snapshot command (global, timestamp)?
* Keep separate the "restore" from "mount"?
> Snapshots shell
> ---------------
>
> Key: HBASE-6353
> URL: https://issues.apache.org/jira/browse/HBASE-6353
> Project: HBase
> Issue Type: Sub-task
> Components: shell
> Reporter: Matteo Bertozzi
> Assignee: Matteo Bertozzi
> Attachments: HBASE-6353-v0.patch, HBASE-6353-v1.patch,
> snapshot-offline-test-demo.shell
>
>
> h6. hbase shell with snapshot commands
> * snapshot <snapshot name> <table name>
> ** Take a snapshot of the specified name with the specified name
> * restore_snapshot <snapshot name>
> ** Restore specified snapshot on the original table
> * clone_snapshot <snapshot name> <table name>
> ** Create a new table based on the snapshot content
> * list_snapshots [filter]
> ** Show the list of snapshots taken
> * delete_snapshot <snapshot name>
> ** Remove a specified snapshot
> * rename_snapshot <snapshot name> <new snapshot name>
> ** Rename a snapshot to a new name
> h6. 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.
> This allows a full and quick rollback to a previous snapshot.
> h6. Clone from Snapshot
> 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 Add/Remove data from this table without affecting the original one or
> the snapshot.
> * 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)
> h6. Open points
> * Add snapshot type option on take snapshot command (global, timestamp)?
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira