检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
CDM的事务模式迁移,是指当CDM作业执行失败时,将数据回滚到作业开始之前的状态,自动清理目的表中的数据。 参数位置:创建表/文件迁移的作业时,如果目的端为关系型数据库,在目的端作业配置的高级属性中,可以通过“先导入阶段表”参数选择是否启用事务模式。 参数原理:如果启用,在作业执行时CDM会自动创建临时
后,可以增量迁移指定时间段内的数据(例如每天晚上0点导出前一天新增的数据)。 增量迁移指定时间段内的数据 适用场景:源端为关系型数据库,目的端没有要求。 关键配置:Where子句+定时执行作业。 前提条件:数据表中有时间日期字段或时间戳字段。 关系数据库增量迁移方式,只对数据表追加写入,不会更新或删除已存在的记录。
后,可以增量迁移指定时间段内的数据(例如每天晚上0点导出前一天新增的数据)。 增量迁移指定时间段内的数据 适用场景:源端为关系型数据库,目的端没有要求。 关键配置:Where子句+定时执行作业。 前提条件:数据表中有时间日期字段或时间戳字段。 关系数据库增量迁移方式,只对数据表追加写入,不会更新或删除已存在的记录。
Hive开启LDAP认证时配置的密码。 - OBS支持 需服务端支持OBS存储。在创建Hive表时,您可以指定将表存储在OBS中。 否 访问标识(AK) 当“OBS支持”参数选择为“是”时,此参数是必选项。请注意,此处AK/SK对应的账号应具备OBS Buckets Viewer系统权限,否则会无法访问OBS并报“403
403”考虑是Hive同步表到OBS目录报错。用户配置连接器时候,没有打开OBS开关。 检查连接器配置,发现没有打开开关,参数含义是“是否支持OBS存储,如果Hive表数据存储在OBS,需要打开此开关”。 解决方案 修改连接配置,打开Hive连接中的OBS开关,重新输入密码。 父主题:
Hive开启LDAP认证时配置的密码。 - OBS支持 需服务端支持OBS存储。在创建Hive表时,您可以指定将表存储在OBS中。 否 访问标识(AK) 当“OBS支持”参数选择为“是”时,此参数是必选项。请注意,此处AK/SK对应的账号应具备OBS Buckets Viewer系统权限,否则会无法访问OBS并报“403
配置Redis源端参数 第三方云的Redis服务无法支持作为源端。如果是用户在本地数据中心或ECS上自行搭建的Redis支持作为源端或目的端。 作业中源连接为从本地Redis导出的数据时,源端作业参数如表1所示。 表1 Redis作为源端时的作业参数 参数类型 参数名 说明 取值样例
用户在云上进行数据集成、数据备份、新应用开发时,经常会涉及到数据迁移。通常情况下用户要进行数据迁移,会开发一些数据迁移脚本,从源端读取数据再写入目的端,相对这样传统的做法,CDM的优势如表1所示。 表1 CDM优势 优势项 用户自行开发 CDM 易使用 自行准备服务器资源,安装配置必要的软件并进行配置,等待时间长。
使用配置文件 “数据格式”选择为“CDC场景”时配置,用于配置OBS文件。 否 OBS链接 选择OBS连接器信息。 obs_link OBS桶 选择OBS桶。 obs_test 配置文件 选择OBS的配置文件。 /obs/config.csv 最大消息数/poll 可选参数,每次向Kafka请求数据限制最大请求记录数。
to-config-values 是 ConfigValues object 目的连接参数配置。根据不同目的端有不同的参数配置,具体可参考目的端作业参数说明下相应的目的端参数配置。 to-link-name 是 String 目的端连接名称,即为通过“创建连接”接口创建的连接对应的连接名。 driver-config-values
否有元数据查询的权限。 COLLECTION 高级属性 查询筛选 创建用于匹配文档的筛选条件,CDM只迁移符合条件的数据。例如: 按表达式对象筛选:例如{'last_name': 'Smith'},表示查找所有“last_name”属性值为“Smith”的文档。 按参数选项筛选:例如{
to-config-values 是 ConfigValues object 目的连接参数配置。根据不同目的端有不同的参数配置,具体可参考目的端作业参数说明下相应的目的端参数配置。 to-link-name 是 String 目的端连接名称,即为通过“创建连接”接口创建的连接对应的连接名。 driver-config-values
周:每周一零点执行一次。 月:每月1号零点执行一次。 日 备份写入OBS连接 CDM通过该连接,将作业备份到OBS,需要用户提前在“连接管理”界面创建好OBS连接。 obslink OBS桶 存储备份文件的OBS桶。 cdm 备份数据目录 存储备份文件的目录。 /cdm-bk/ 恢复作业
脏数据要写入的连接,目前只支持写入到OBS连接。 obs_link OBS桶 当“脏数据写入连接”为OBS类型的连接时,才显示该参数。 写入脏数据的OBS桶的名称。 dirtydata 脏数据目录 “是否写入脏数据”选择为“是”时,该参数才显示。 OBS上存储脏数据的目录,只有在配置了脏数据目录的情况下才会记录脏数据。
迁移数据到DLI时有数据丢失怎么处理? 问题描述 目的端是DLI的迁移作业执行成功后,显示迁移的数据条数和DLI表中查询的数量对不上,存在数据丢失。 原因分析 查看客户的作业配置,客户并发数设置的是3,如图所示。 查看DLI官网文档不建议同时对一张表并发插入数据。 解决方案 将作业的抽取并发数改成1
to-config-values 是 ConfigValues object 目的连接参数配置。根据不同目的端有不同的参数配置,具体可参考目的端作业参数说明下相应的目的端参数配置。 to-link-name 是 String 目的端连接名称,即为通过“创建连接”接口创建的连接对应的连接名。 driver-config-values
concurrentSubJobs参数(并发子作业数,新集群已取消这个配置项)。 让客户在导出的json 文件中将删除以下配置项,重新导入作业到新集群,导入成功。 { "name":"throttlingConfig.concurrentSubJobs", "value":"10"
移作业,也可以实现增量数据迁移。 这里以DWS导入到OBS为例,介绍DLF配合CDM实现增量迁移的流程: 获取CDM作业的JSON 修改JSON 创建DLF作业 获取CDM作业的JSON 进入CDM主界面,创建一个DWS到OBS的表/文件迁移作业。 在CDM“作业管理”界面的“表
String 脏数据要写入的连接,目前只支持写入到OBS连接或HDFS连接。例如:“obslink”。 throttlingConfig.obsBucket 否 String 写入脏数据的OBS桶的名称,只有当脏数据要写入OBS连接的时候,此参数才生效。例如:“dirtyData”。
后台排查sqoop日志,考虑源端数据类型格式问题导致异常。 分析源端数据类型,发现数据类型中有脏数据,源端数据类型有问题。 客户CDM界面配置脏数据功能,作业重跑成功,OBS桶排查脏数据类型存在问题,格式不匹配。 父主题: 故障处理类