上云无忧 > 文档中心 > 天翼云云HBASE数据库的导入导出
云HBASE数据库
天翼云云HBASE数据库的导入导出

文档简介:
集群迁移 集群迁移发生在如下业务场景: •业务拆分,将部分业务迁移到新的HBase集群 •集群缩容 •双集群备份切换 云hbase目前支持对同租户下的新建集群实行一键迁移,具体流程如下: 点击左侧导航栏的集群迁移,进入集群迁移列表页面,见下图
*产品来源:中国电信天翼云。免费试用 咨询热线:400-826-7010,为您提供专业的售前咨询,让您快速了解云产品,助您轻松上云! 微信咨询
  免费试用、价格特惠

集群迁移

集群迁移发生在如下业务场景:

•业务拆分,将部分业务迁移到新的HBase集群

•集群缩容

•双集群备份切换

云hbase目前支持对同租户下的新建集群实行一键迁移,具体流程如下:

点击左侧导航栏的集群迁移,进入集群迁移列表页面,见下图

点击按钮添加迁移集群,填写迁移任务。

目标集群仅支持相同资源池下同一账户的不同云HBASE集群。如有其它特殊需求,请参考后台导入导出章节进行处理。填写好迁移任务信息后,点击按钮一键迁移,集群会对当前源集群创建快照,并将集群全量备份到目标集群的HDFS上。然后以此全量备份对目标集群做还原。

注意事项

1.迁移前请确认目标集群的HDFS容量为备份数据的两倍,防止迁移过程中出现容量写满的情况

2.增量迁移为全量备份,为避免数据遗漏。建议在迁移期间暂停业务数据录入集群

3.用户无需在目标集群创建表,迁移会自动创建和源集群一样的表,包括分区的信息。客户自建的目标表可能会和源表分区很不一致,这可能会导致迁移完成之后,目标表会进行频繁的split、compaction,如果表的数据量十分庞大,可能会导致这个过程非常耗时

4.如果源表带有 coprocessor和索引, 在创建目标表的时候可能会报错,因为目标集群不包含对应的coprocessor

5.如果迁移无论成功失败,迁移程序会自动清理当前备份数据


后台导入导出

具体业务场景如下

•自建HBase集群迁移上云HBASE

•跨资源池迁移

•迁移部分业务表

•业务拆分,将部分业务迁移到离线集群的hdfs

•退订,将数据导出到对应ECS

注意:迁移前请确认目标集群的HDFS容量,防止迁移过程中出现容量写满的情况


场景

迁移方式

环境

企业版单表,或者少量表,数据量小于5TB导出

CopyTable命令

需要确保其它集群的vpc网络与当前集群网络互通。

建议停止应用对集群对应表的写操作。

企业版全库或者部分表导出

Export命令

需要确保其它集群的vpc网络与当前集群网络互通。

建议停止应用对集群对应表的写操作。

单节点表数据导出

snapshot

需要确保其它集群的hdfs或者兼容S3协议接口可访问

企业版全库或者部分表导出

Backup命令

需要确保其它集群的hdfs或者兼容S3协议接口可访问

具体步骤:

(1)下载hbase client客户端

在集群列表内点击需要导入或者导出的集群明细,进入明细页面。

点击按钮客户端安装包下载安装包文件到本地。您可通过ftp软件上传客户端安装包到对应可连接到

您购买的ecs机器上。(请确认该ecs与导入导出集群对应的vpc是否可以联通)

(2) HBase数据导出到HDFS或者本地文件

在hbase client /bin目录下运行

hbase org.apache.hadoop.hbase.mapreduce.Export emp file:///usr/hbase_data/bak

HBase数据导出到本地文件

hbase org.apache.hadoop.hbase.mapreduce.Export emp /hbase/emp_bak

导入hbase表(# 默认不写file://的时候就是导出到hdfs上了  )

将hdfs上的数据导入到备份目标表中

$ hbase org.apache.hadoop.hbase.mapreduce.Driver import emp_bak /hbase/emp_bak/*

将本地文件上的数据导入到备份目标表中

hbase org.apache.hadoop.hbase.mapreduce.Driver import emp_bak file:///usr/hbase_data/bak/*

(3) 导出时可以限制scanner.batch的大小

如果在hbase中的一个row出现大量的数据,那么导出时会报出ScannerTimeoutException的错误。这时候需要设置hbase.export.scanner.batch 这个参数。这样导出时的错误就可以避免了。

hbase org.apache.hadoop.hbase.mapreduce.Export -Dhbase.export.scanner.batch=2000 emp file:///usr/hbase_data/bak

(4)为了节省空间可以使用compress选项

hbase的数据导出的时候,如果不适用compress的选项,数据量的大小可能相差5倍。因此使用compress的选项,备份数据的时候是可以节省不少空间的。

hbase org.apache.hadoop.hbase.mapreduce.Export -Dhbase.export.scanner.batch=2000 -D mapred.output.compress=true emp file:///usr//hbase_data/bak

命令说明:

2.10.1. hbase backup create full/incremental path

          full:创建全量备份

          incremental:创建增量备份

          path:备份到的文件系统以及对应的路径

          可以跟的选项:-t table;如果不写就是全部的表都备份

                      -w 后面跟的数字,表示多少个工作任务

                      -s 备份的set

                      -b 控制备份的带宽

    2.10.2. hbase restore path  backupid

           path:备份的路径

           backupid:备份的id;

           后面可以的选项: -o 覆盖之前的表

                           -t 备份的表,其他选项类似

    2.10.3.hbase backup merge

        把一些backup的id进行merge,可以是每日的backup merge成一个;

    2.10.4.hbase backup progress

        展示backup进度

(5)迁移部分表业务,请联系客户经理。

相似文档
  • 过滤器: 过滤器提供了非常强大的特性来帮助用户提高HBase处理表中数据的效率。用户不 仅可以使用HBase中预定义好的过滤器,而且可以实现自定义的过滤器。
  • 1.了解基本概念 在开始开发应用前,需要了解HBase的基本概念,了解场景需求,设计表等。 2.准备开发和运行环境 HBase的应用程序当前推荐使用Java语言进行开发。可使用Eclipse工具。
  • 开发和运行环境简介 在进行二次开发时,要准备的开发和运行环境如下表所示。 准备项 说明 操作系统 开发环境:Windows系统或Linux系统,推荐Windows 7以上版本。
  • 配置并导入样例 背景信息 HBase客户端安装程序目录中包含了HBase开发样例工程,将工程导入到Eclipse开始样 例学习。 前提条件 确保本地PC的时间与云HBASE集群的时间差要小于5分钟,若无法确定,请联系系 统管理员。
  • 典型场景说明: 通过实例说明,我们可以初步掌握HBase的开发过程,对关键的接口函数和指令有所了解。 假定用户开发一个应用程序,用于网址管理上网用户的用户信息,如下表所 示,业务流程如下:
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部