如何一次导入/导出所有Hbase表?

时间:2014-02-24 11:59:04

标签: java hadoop hbase

$ bin/hbase org.apache.hadoop.hbase.mapreduce.Export <tablename> <outputdir> [<versions> [<starttime> [<endtime>]]]

上面的命令对于只导出单个表很有用,但是它非常耗时,所以我想要及时导出所有表,所以有没有一次导出所有表的命令?

2 个答案:

答案 0 :(得分:1)

每个表的导入/导出工作。或者,您可以使用Hadoop的 distcp 命令将整个 / hbase 目录从一个HDFS群集复制到另一个HDFS群集。但是,这可能会使您的数据处于不一致状态,因此应该避免使用。

我想指出一个由Mozilla的人们开发的备份工具,他们说这可以消除distcp的限制。有关详细信息,请参阅post

答案 1 :(得分:0)

我的问题答案是:

对于导出表,使用copyFromLocal命令 - 它复制本地\ hbase目录
对于导入表,请使用copyToLocal命令 - 在本地\ hbase目录中粘贴。