首页 > 代码库 > HBase表数据导出和导入

HBase表数据导出和导入

本文不是技术收集贴,就是记录一下,因此没有收集所有的HBase表导入导出方式,只是记录一下自己用过的一种。

数据表的导出:

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

需要注意的是,outputdir指的是HDFS上的路径,建议使用绝对路径(没有试过相对路径)。

数据表的导入:

1 $ bin/hbase org.apache.hadoop.hbase.mapreduce.Driver import <tablename> <inputdir>

需要注意的是有2点:

1 与导出一样,inputdir指的是HDFS上的路径,建议使用绝对路径。

2 table的结构必须事先已经存在。

还有一个比较实用的技巧,当导出数据的HBase版本和需要导入数据的HBase版本不一致时,在数据导入时可以指定备份文件是从哪个版本的HBase中导出来的,如果是从0.94版本的HBase导出来的,则命令如下:

1 $ bin/hbase -Dhbase.import.version=0.94 org.apache.hadoop.hbase.mapreduce.Driver import <tablename> <inputdir>

参考文献:hbase 表数据迁移

 

HBase表数据导出和导入