欢迎投稿

今日深度:

Hbase版本升级之数据迁移方案汇总,hbase迁移方案汇总

Hbase版本升级之数据迁移方案汇总,hbase迁移方案汇总


背景:
近期公司hadoop平台升级,升级后hadoop平台各个组件也都升级了。hbase中的数据需要迁移至新版本中;

首先列出集中常用迁移方案:
1. hadoop distcp
将hbase存储在hdfs上面的数据目录全部从当前集群拷贝至目标集群hbase对应的hdfs目录;
hadoop distcp -f hbasedir "hdfs://new cluster ip:9000/hbasedir
再修复meta表和修复分区,详见:
http://blog.csdn.net/u010316405/article/details/48003747
说明:此方案只适用于离线迁移;且测试由0.94–》1.0版本测试失败。同版本没问题
2. copy table
将表直接进行拷贝,可以在本集群拷贝,也可以跨集群拷贝
hbase org.apache.hadoop.hbase.mapreduce.CopyTable --peer.adr=new cluster ip:2181:/hbase testTable
拷贝完之后直接可用
说明:在使用同版本jar包的hbase版本中可用,跨大版本的hbase中测试会报错误,因为jar包不兼容。例如0.94–》0.96可以用,0.94–》1.0不可用
3. export & distcp & import
先在当前集群export table 至hdfs
hbase org.apache.hadoop.hbase.mapreduce.Export $table_name /hbase_export/$table_name
再在目标集群执行distcp
hdfs hadoop distcp hftp://old cluster:50070/hbase_export/$table_name /hbase_export/$table_name
然后在目标集群执行导入
hbase org.apache.hadoop.hbase.mapreduce.Import $table_name /hbase_export/$table_name/*
导入完成后即可用,导入前需要先建立相同结构的表
说明:此方案适用于各种不同版本间的数据迁移;导入时可以用
-Dhbase.import.version=
参数指定数据来源的hbase版本号;

www.htsjk.Com true http://www.htsjk.com/hbase/31882.html NewsArticle Hbase版本升级之数据迁移方案汇总,hbase迁移方案汇总 背景: 近期公司hadoop平台升级,升级后hadoop平台各个组件也都升级了。hbase中的数据需要迁移至新版本中; 首先列出集中常用迁移...
相关文章
    暂无相关文章
评论暂时关闭