Description
The purpose of this JIRA is provide a place to coordinate the development of a utility that will regenerate an hbase table from the data files.
Here are some comments from stack on this subject from the hbase-user mailing list:
Well, in the bin directory, there are scripts that do various things with
the .META. (copy a table, move a table, load a table whose source is hfiles
written by a mapreduce job; i.e. hbase-48).
So, to 'regenerate an hbase table from the data files', you'd need to do
something like the following:
+ delete all exisiting table references from .META.
+ move the backuped up table into position under hbase.rootdir
+ per region under hbase.rootdir, add an entry to .META. Do this by opening
the .regioninfo file. Its content is needed to generate the rowid for
.META. and its value becomes the info:regioninfo cell value.
HBase does not need to be down. On next .META. scan, the newly added
regions will be noticed. They won't have associated info:server and
info:startcode entries so master will go ahead and assign them and you
should be up and running.
Code-wise, a study of copy_table.rb (this uses old api ... needs updating
but the concepts are the same) and loadtable.rb would probably be fruitful.
Attachments
Attachments
Issue Links
- is related to
-
HBASE-2366 We should store table metadata in a single location, for HDFS table recovery, not on every region
- Closed
- relates to
-
HBASE-7 [hbase] Provide a HBase checker and repair tool similar to fsck
- Closed