Hbase:从独立模式迁移到完全分布式模式

时间:2013-05-14 11:44:57

标签: hadoop hbase

我想如果可以在Hbase中从独立模式迁移到完全分布式模式。我有一些独立模式的数据,我希望在迁移过程中保持这种状态。 请帮忙。

1 个答案:

答案 0 :(得分:2)

相当古老的问题,但最近我遇到了同样的问题,并使用以下步骤解决了这个问题:

在独立模式下

要迁移的导出表:

<?xml version="1.0"?>
<!--
  For more information on how to configure your ASP.NET application, please visit
  http://go.microsoft.com/fwlink/?LinkId=169433
  -->
<configuration>  
  <system.web>
    <compilation debug="true" targetFramework="4.0"/>
    <httpRuntime/>
  </system.web>

  <connectionStrings>    
    <add name="MS_EAS_LocationConnectionString" connectionString="Data Source=help\sqlexpress;Initial Catalog=MS.EAS.LOCATION;User ID=sa;Password=123" providerName="System.Data.SqlClient"/>
  </connectionStrings>

</configuration>

在伪分布/分布式模式

使用hadoop复制hdfs中的表:

bin/hbase org.apache.hadoop.hbase.mapreduce.Driver export table_name /local/path/table_name_backup

使用hbase导入数据:

./bin/hadoop fs -copyFromLocal /local/path/table_name_backup/ table_name_backup

使用hadoop从hdfs中删除旧数据:

./bin/hbase org.apache.hadoop.hbase.mapreduce.Driver import table_name table_name_backup

U可能想要检查迁移前后的行数,以检查是否所有内容都按计划进行:

./bin/hadoop dfs -rmr table_name_backup