检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
HBase、Apache HBase或者CloudTable导出数据时,源端作业参数如表1所示。 CloudTable或HBase作为源端时,CDM会读取表的首行数据作为字段列表样例,如果首行数据未包含该表的所有字段,用户需要自己手工添加字段。 由于HBase的无Schema技术特点,CDM
CDM作业实际启动时间-偏移量”。 table 导入开始前 导入数据前,选择是否清除目的表的数据: 不清除:写入数据前不清除目标表中数据,数据追加写入。 清除全部数据:写入数据前会清除目标表中数据。 清除部分数据:需要配置“where条件”参数,CDM根据条件选择性删除目标表的数据。
首行为标题行 “文件格式”选择“CSV格式”时才有该参数。在迁移CSV文件到表时,CDM默认是全部写入,如果该参数选择“是”,CDM会将CSV文件的前N行数据作为标题行,不写入目的端的表。 否 编码类型 文件编码类型,例如:“UTF-8”或“GBK”。只有文本文件可以设置编码类
Agent功能待下线,无需配置。 - Agent Agent功能待下线,无需配置。 - 后端数据源 输入后端数据库的类型,当前仅支持MYSQL。 MYSQL 数据源列表 输入后端数据库的IP、端口、数据库名称、账户名、密码,以“:”隔开。即ip:port:dbs:username:p
toJobConfig.queue 是 String 写入数据的资源队列。 toJobConfig.database 是 String 写入数据到数据湖探索(DLI)的哪个数据库。 toJobConfig.table 是 String 写入数据的表名。 toJobConfig.columnList
9030 数据库名称 配置为要连接的数据库名称。 dbname 用户名 待连接数据库的用户。该数据库用户需要有数据表的读写权限,以及对元数据的读取权限。 cdm 密码 用户名密码。 - 使用Agent Agent功能待下线,无需配置。 - Agent Agent功能待下线,无需配置。
迁移准备 前提条件 CDH HBase的版本号小于或等于MRS HBase的版本号。 待迁移的表在迁移过程中不能有写入,Split,Merge等操作。 使用华为云专线搭建CDH集群与华为云VPC之间的专属连接通道。 迁移流程 预估迁移数据量、迁移时间。 输出详细待迁移数据表、文件个数、大小,用于后续校验。
本小节主要介绍云数据迁移的计费说明,包括计费项、计费方式等。 在您使用CDM的过程中,可能还会产生以下相关服务的费用,敬请知悉: OBS服务:数据迁移时,CDM可能会将脏数据写入到OBS服务中,则会产生对象存储服务费用,收费标准请参见OBS价格详情。 EIP服务:如果您为CDM集群开通了公网IP,则会产生弹性公网I
是否默认首行为标题行,当文件格式为“CSV_FILE”时此参数有效。在迁移CSV文件到表时,CDM默认是全部写入,当该参数选择“true”时,CDM会将CSV文件的第一行数据作为标题行,不写入目的端的表。 fromJobConfig.fromCompression 否 枚举 压缩格式,表示
源,需要先将本地数据迁移上云。该场景下,需要保证本地网络与云上网络是连通的。 图1 大数据迁移上云 数据批量入湖 这个场景支持用户本地数据全量和T+1增量入湖。 图2 数据批量入湖
目的端的“写入目录”配置为“/opt/ttxx/${timestamp()}”。 经过宏定义转换,这个作业表示:将Oracle数据库的“SQOOP.CDM_20171016”表中数据,迁移到HDFS的“/opt/ttxx/1508115701746”目录中。 图1 源表名和写入目录配置为时间宏变量
目的端的“写入目录”配置为“/opt/ttxx/${timestamp()}”。 经过宏定义转换,这个作业表示:将Oracle数据库的“SQOOP.CDM_20171016”表中数据,迁移到HDFS的“/opt/ttxx/1508115701746”目录中。 图1 源表名和写入目录配置为时间宏变量
是”,CDM在才会将表的标题行数据写入文件。 否 写入到临时文件 将二进制文件先写入到临时文件(临时文件以“.tmp”作为后缀),迁移成功后,再进行rename或move操作,在目的端恢复文件。 否 作业成功标识文件 当作业执行成功时,会在写入目录下生成一个标识文件,文件名由用户指定。不指定时默认关闭该功能。
否:关闭时能提升写入性能,但如果HBase服务器宕机可能会造成数据丢失。 否 匹配数据类型 是:源端数据库中的Short、Int、Long、Float、Double、Decimal类型列的数据,会转换为Byte[]数组(二进制)写入HBase,其他类型的按字符串写入。如果这几种类型
toJobConfig.hive 否 String 写入数据的数据源。 toJobConfig.database 否 String 写入数据的数据库名称,例如:“default”。 toJobConfig.table 是 String 写入数据的表名。 toJobConfig.tablePreparation
outputDirectory 是 String 数据写入的路径,例如“/data_dir”。 toJobConfig.outputFormat 是 枚举 写入数据时所用的文件格式(二进制除外),支持以下文件格式: CSV_FILE:按照CSV格式写入数据。 BINARY_FILE:二进制格式
CDM的作业数据量太多,会造成数据库压力,建议定时清理不需要的作业。 短时间内下发大量作业,可能会导致集群资源耗尽异常等,您调用API时需要注意。 CDM是批量离线迁移工具,不建议客户创建大量小作业场景。
故障分析 整库迁移每个表中数据平均2~5亿条。源端10分钟会更新一次数据。 CDM不支持实时迁移,但是支持定时迁移,用户10分钟就会有批量数据更新,考虑是迁移任务没有完成,源库已经更新,回滚超时。 Oracle报错ORA-01555,数据迁移如果做整表查询,并且查询时间较长时
DLI的default队列无法在迁移作业中使用,您需要在DLI中新建SQL队列。 新建队列操作请参考创建队列。 cdm 数据库名称 写入数据的数据库名称。 dli 表名 写入数据的表名。 car_detail 导入前清空数据 选择导入前是否清空目的表的数据。 如果设置为是,任务启动前会清除目标表中数据。
完整。 关系数据库、Hive、MRS Hudi及DLI做源端时,不支持获取样值功能。 SQLServer作为目的端数据源时,不支持timestamp类型字段的写入,需修改为其他时间类型字段写入(如datetime)。 当作业源端为OBS、迁移CSV文件时,并且配置“解析首行为列名”参数的场景下显示列名。