一、准备工作
-
环境准备:
- 确保已经拥有云数据库HBase增强版和OBKV的实例,并且这两个实例都处于可用状态。
- 登录OceanBase管理控制台,购买数据迁移任务。
-
权限配置:
- 为源端HBase数据库创建专用于数据迁移的数据库用户,并赋予其相关权限。
- 为目标端OBKV创建专用于数据迁移的数据库用户,并赋予其相关权限。
-
数据传输配置:
- 确保数据传输服务已经具备云资源访问权限。
- 如果数据传输服务尚未配置角色授权,请按照相关文档进行配置。
二、迁移步骤
-
登录OceanBase管理控制台:
- 在控制台中,找到数据传输或数据迁移的相关选项。
-
创建数据迁移任务:
- 在数据传输页面,单击新购买的数据迁移任务后的“配置”。
- 如果需要引用已有的任务配置信息,可以单击“引用配置”。
-
选择源和目标:
- 在选择源和目标页面,配置各项参数。
- 源端:选择已经创建的HBase数据源。如果未新建,请单击下拉列表中的“新建数据源”,在右侧对话框进行新建。
- 目标端:选择已经创建的OBKV数据源。如果未新建,请单击下拉列表中的“新建数据源”,在右侧对话框进行新建。
- 单击文本框,在下拉列表中选择目标标签。也可以单击“管理标签”,进行新建、修改和删除。
- 在选择源和目标页面,配置各项参数。
-
选择迁移类型:
- 迁移类型包括结构迁移、全量迁移、增量同步、全量校验和反向增量。
- 结构迁移:将源库中的数据对象定义(表、列族等)迁移到目标端数据库中,并自动过滤临时表。
- 全量迁移:将源端库表的存量数据迁移至目标端数据库对应的表中。
- 增量同步:同步源端数据库发生变化的数据(新增、修改或删除)至目标端数据库对应的表中。增量同步支持DML同步,可以根据需求进行自定义配置。
- 全量校验:在全量迁移完成、增量数据同步至目标端并与源端基本追平后,数据传输会自动发起一轮针对源端数据库配置的数据表和目标表的全量数据校验任务。
- 反向增量:可以实时将业务切换后在目标端数据库产生的变更数据回流至源端数据库。
- 迁移类型包括结构迁移、全量迁移、增量同步、全量校验和反向增量。
-
配置迁移任务:
- 根据实际需求,配置迁移任务的各项参数,如并发速度、增量同步起始位点等。
-
启动迁移任务:
- 在配置完成后,单击“启动任务”按钮,开始数据迁移。
三、迁移监控与处理
-
监控迁移任务:
- 在数据传输页面,可以查看迁移任务的进度和状态。
- 如果迁移任务出现异常或失败,及时查看错误日志并处理。
-
处理异常:
- 如果数据迁移任务长期处于非活跃状态(任务状态为失败、已暂停或已完成),受增量日志保留时长等影响,任务可能无法恢复。因此,建议为任务配置告警并及时处理任务相关异常。
- 如果遇到数据质量问题,可以在全量校验阶段进行检测和处理。
四、迁移完成
-
验证迁移结果:
- 在迁移完成后,验证目标端OBKV中的数据是否与源端HBase增强版中的数据一致。
-
释放资源:
- 如果迁移任务已经完成并且不再需要,可以释放相关资源以回收空间。
五、注意事项
-
使用限制:
- 目前数据传输支持HBase数据库V2.x,OBKV V4.2.1和V4.2.4。
- 数据传输仅支持迁移HBase增强版中tablename和columnfamily由0-9、a-z、A-Z和下划线(_)组成的数据至OBKV。
-
数据迁移建议:
- 迁移HBase增强版的数据至OBKV时,仅支持HBase模型的表对象,选择其他类型表对象可能导致数据质量问题。
- 增量同步配置中的Kafka分区数建议设置为1。
- 不建议将HBase增强版至OBKV的数据迁移任务作为长期同步的方式,仅作为数据迁移使用。
-
数据一致性:
- 如果存在put某个行键(rowkey)的字段数据为空字符串('')的操作,增量同步阶段可能判断为将该值删除。
- 如果HBase增强版和OBKV的TTL(Time to Live)配置不一致,可能导致源端和目标端的数据不一致。
通过以上步骤和注意事项,可以顺利完成HBase增强版的数据至OBKV的迁移工作。