检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
数据源所在的主机、数据源所在的主机可以访问公网且防火墙规则已开放连接端口。 在本地数据中心和云服务VPC之间建立VPN通道。 通过NAT(网络地址转换,Network Address Translation)或端口转发,以代理的方式访问。 这里重点介绍如何通过端口转发工具来实现访问内部数据,流程如下:
作业执行过程中,由于源端连接闪断、超时或者源端主动终止了连接导致作业执行失败怎么处理? 问题定位 日志中出现源端的read timeout报错,或者terminate by xxx之类的报错。 规避方案 如果源端网络不稳定,可以使用分片重试能力多次执行作业,可能需要调整作业配置。
IP),记录下CDM集群所在的VPC和子网。 创建NAT网关,注意选择和CDM集群相同的VPC、子网。 创建完NAT网关后,回到NAT网关控制台列表,单击创建好的网关名称,然后选择“添加SNAT规则”。 图1 添加SNAT规则 选择子网和弹性IP,如果没有弹性IP,需要先申请一个。
cdm.large:16 cdm.xlarge:32 cdm.4xlarge:128 业务模型 如果大量CDM作业同时执行,当超过当前CDM集群的并发执行作业数时,会导致作业排队,耗时提升。 建议您将迁移作业的运行时间错开,平摊在业务周期内,避免资源紧张导致迁移时间过长。 数据模型
作业执行卡Running,读取行数写入行数相等且不再增加怎么解决? 原因分析 CDM写Hudi为两段式,先写到hive临时表,然后再执行spark sql写到Hudi,写入行数统计的是写hive临时表的行数,当行数不再增长时,说明源端数据已经读完写到Hive表中,此时作业正在执行Spark
该作业的执行状态。作业状态为Succeeded即迁移成功。 图1 作业状态 作业状态有New,Pending,Booting,Running,Failed,Succeeded,stopped。 其中“Pending”表示正在等待系统调度该作业,“Booting”表示正在分析待迁移的数据。
作业失败重试:如果作业执行失败,可选择是否自动重试,这里保持默认值“不重试”。 作业分组:选择作业所属的分组,默认分组为“DEFAULT”。在CDM“作业管理”界面,支持作业分组显示、按组批量启动作业、按分组导出作业等操作。 是否定时执行:如果需要配置作业定时自动执行可开启。这里保持默认值“否”。
topped。 其中“Pending”表示正在等待系统调度该作业,“Booting”表示正在分析待迁移的数据。 查看历史记录 查看作业执行结果及最近30天内的历史信息,包括历史执行记录、读取和写入的统计数据,在历史记录界面还可查看作业执行的日志信息。 查看作业日志 在历史记录界面可查看作业所有的日志。
查询作业执行历史 功能介绍 查询作业执行历史接口。 调用方法 请参见如何调用API。 URI GET /v1.1/{project_id}/clusters/{cluster_id}/cdm/submissions 表1 路径参数 参数 是否必选 参数类型 描述 project_id
月的15号执行该定时任务。并且该参数支持输入多个,以英文的逗号“,”分隔开。 例如上述场景中“runAt”输入“1,2,3,4,5”,就表示每个月的1日、2日、3日、4日和5日执行该定时任务。 周期类型为“week”时,“runAt”输入“mon,tue,wed,thu,fri”,就表示周一到周五执行该定时任务。
执行作业后(非失败重试),作业执行卡Running,但是数据写入行数一直显示为0如何处理? 问题排查 打开日志,最后一行日志如下所示,则说明此时集群并发资源消耗殆尽,或者集群内存使用达到阈值,新提交的作业需要排队等待。 submit task attempt_local18473
execute_create_date 否 Long 最近一次执行任务创建时间,单位:毫秒。由系统生成,用户无需填写。 status 否 String 作业最后的执行状态: BOOTING:启动中。 RUNNING:运行中。 SUCCEEDED:成功。 FAILED:失败。 NEW:未被执行。 表5 ConfigValues
of memory) 。 可以尝试的规避方法: 在作业管理界面选择“更多-失败重试”,尝试重新执行Spark SQL。 通过DataArts Studio执行Spark SQL,设置执行参数或者调整SQL。 调整Spark切片大小: set spark.sql.files.max
通过json方式导入的作业,sql server迁移到hive,执行作业报错 问题描述 客户通过json的方式导入作业,从sql server迁移数据到hive,执行作业报:操作数数据类型bit 对min 运算无效。 图1 报错信息 故障分析 客户作业中配置的并发数大于1,CDM
获取集群列表为空/没有权限访问/操作时报当前策略不允许执行? 问题描述 在使用CDM时,可能遇到如下权限相关的问题: 跳转到CDM首页,获取到的集群列表为空。 提示没有权限访问,如图1所示。 执行启动作业/重启集群等操作时,报错当前策略不允许执行,如图2所示。 图1 没有权限访问 图2 不允许创建连接
执行Postgresql-to-Hive迁移作业报错“Error occurs during loader run” 问题描述 用户使用CDM服务,从源端pg迁移数据到目的端hive界面报错提示“Error occurs during loader run”。 故障分析 排查客户
StringUtils.replace(value,"\\t","")(即把 \ 再次转义)。 如果当前字段为字符串类型,一次替换字符串中的多个字符,例如将字符串“hello”中的“h”用“j”替换,“o”用“y”替换,转换后为“jelly”。 表达式:StringUtils.replaceChars(value
Mysql导入数据到DLI,快执行完时失败了提示Invoke DLI service api failed错误怎么解决? 问题描述 导入了4000W数据,快执行完时报如下错误。 故障分析 结合报错,考虑是DLI目的端写入问题。但因日志截图不全,进入CDM集群,查看客户作业日志。
g:UPLOAD_PEOPLE g:ID g:INFOMATION_ID g:TITLE g:COORDINATE_X g:COORDINATE_Y g:COORDINATE_Z g:CONTENT g:IMAGES g:STATE 在CDM的作业管理界面,找到HBase导出数据
读Hudi作业字段映射多了一列col,作业执行失败怎么处理? 问题原因:使用Spark SQL写数据入hudi表,由于配置问题,表schema中会自动增加一列类型为array<string>,名称为col的列。 解决方案:字段映射中删去此列,如果是自动建表,SQL中也要把此列删去。