需求:将一个集群中phoenix表的数据搬到另一个集群中
方法:使用hbase自带的Import和Export命令,先从A集群导出文件,然后将此文件移至B集群hdfs上,在B集群上建表(同样的与预分区),再将此文件转换成hfile,最后使用org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles 加载hfile到目标表
使用到的命令:
A集群导出
$HBASE_HOME/bin/hbase org.apache.hadoop.hbase.mapreduce.Export \
-Dhbase.client.scanner.caching=1000 \
-Dhbase.export.scanner.batch=10
table_name hdfs://host:8020/xxx/TableName_HDFS(导出到HDFS目录)
B集群导入
$HBASE_HOME/bin/hbase org.apache.hadoop.hbase.mapreduce.Import \
-Dimport.bulk.output=/hfile/nbgdata_one table_name /work/nbgdata_one
$HBASE_HOME/bin/hbase org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles /hfile/nbgdata_one table_n
问题:过程中hbase没有报错,但是完成后在表中查不到数据,我在表所在的目录下查看了一下,是有数据的,但是就是查询的时候查不出来,请大神帮忙,不胜感激
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。