数据导入常见问题排查

更新时间:

本文汇总了数据导入失败/超时常见问题

自助排查手册

完全自查

报错信息:xxx表无数据或xxx分区无数据,请自查数据源后重试。

潜在原因:

数据计算平台数据未生产,或写入异常

排查路径:

登录数据源,查询该表或分区是否有数据。查看在QA调度时是否有数据

建议解决方案:

  1. 上游系统补充数据,重新调度

  2. 如上游生产数据时间不定,QA配置的是定时更新。可以使用触发调度,打通上游系统和QA的联通

报错信息:特殊字段类型不支持Ilegal data type - column 'xxx列名' type 'xxx' is not allowed.

排查路径:

登录数据源,查询该表提示哪些字段是特殊的列类型;如BOOLEAN、ARRAY、MAP等

MC语法:DESC 表名;

GUASSDB语法:SELECT pg_get_tabledef('表名');

建议解决方案:

  1. 若无需该字段,则在导入时可以选择关闭该列

  2. 若该列一定需要,则可以转换成文本类型的字段列进行存储

自查+协助排查

报错信息:SQL解析异常Parse exception - invalid token 'FROM'

潜在原因:

出现了sql语法解析错误

排查路径:

请在【Quick Audience-配置管理-数据导入-表结构配置】界面中,查看表结构配置中的原始列表是否存在特殊符号的列表,如 /、-等符号

建议解决方案:

  1. 请前往数据源,修改列名为符合数据库规范的列名(如:字母开头,只包含字母数字_)

如非上述问题,请联系值班Quick Audience同学协助排查。

报错信息:①xxx表不存在 ②xxx表已存在

潜在原因:

表创建失败或已经存在

排查路径:

ADB:

  1. 登录ADB,查询是否有CREATE, DELETE, DROP, INSERT, SELECT, UPDATE,ALTER的操作

  2. 登录ADB管控台,查询在调度过程中,ADB是否在备份快照(在备份快照阶段,不允许执行DDL语法)

HOLO:

  1. 登录holo数据库,查询show hg_experimental_force_sync_replay的值是否为off。

建议解决方案:

ADB:

  1. 如无权限,请登录DMS平台授权账号对应权限

  2. 等ADB备份结束后,再执行Quick Audience调度任务(备注:如备份时间过长,请及时提ADB工单帮忙处理备份问题)

HOLO:

  1. holo集群默认同步时异步,您可以通过在holo控制台执行语句:alter database dbname set hg_experimental_force_sync_replay = on; 来强制等待meta同步,但是会损耗holo的性能。

执行完之后重新开一个holo控制台通过 SQL 命令:show hg_experimental_force_sync_replay; 来查看是否已生效。

若非上述问题,请联系 Quick Audience 的值班同事协助进行排查。

报错信息:Quick Audience取消SQL请求canceling statement due to user request

潜在原因:

  1. 计算源或分析源负载比较高

  2. 数据量大长时间执行SQL未计算出结果,Quick Audience主动断开了连接(同步执行超时时间为3小时)。

排查路径:

  1. 登录计算源后台查询是否负载过高

  2. 后台查询正在执行sql,查询表中数据量是否符合预期

建议解决方案:

  1. 保证资源充足:各个空间任务不相互影响,可各自采购计算资源。减少相互间的依赖,避免资源抢占,运行缓慢;随着数据量增多和空间增加,需要适当查看计算源和分析源资源是否充足。

  2. 运行时间错峰:多个空间使用相同的计算源和分析源资源,各个空间QA的调度任务运行时间尽量错开,避免资源抢占,运行缓慢。如果客户外部系统使用该计算源和分析源,也需错开使用时间。

若非上述问题,请联系Quick Audience值班同学协助排查。

报错信息:调度任务执行超时

潜在原因:

  1. 计算源或分析源负载比较高

  2. 数据量大长时间执行SQL未计算出结果(调度任务超时时间为6小时)。

排查路径:

  1. 登录计算源后台查询是否负载过高

  2. 后台查询正在执行sql,查询表中数据量是否符合预期

建议解决方案:

  1. 保证资源充足:各个空间任务不相互影响,可各自采购计算资源。减少相互间的依赖,避免资源抢占,运行缓慢;随着数据量增多和空间增加,需要适当查看计算源和分析源资源是否充足。

  2. 运行时间错峰:多个空间使用相同的计算源和分析源资源,各个空间QA的调度任务运行时间尽量错开,避免资源抢占,运行缓慢。如果客户外部系统使用该计算源和分析源,也需错开使用时间。

若非上述问题,请联系Quick Audience值班同学协助排查。

任务运行缓慢解决办法

  1. 保证资源充足:各个空间任务不相互影响,可各自采购计算资源。减少相互间的依赖,避免资源抢占,运行缓慢;随着数据量增多和空间增加,需要适当查看计算源和分析源资源是否充足。

  2. 运行时间错峰:多个空间使用相同的计算源和分析源资源,各个空间QA的调度任务运行时间尽量错开,避免资源抢占,运行缓慢。如果客户外部系统使用该计算源和分析源,也需错开使用时间。

  3. 批量调度,多表导入:可以在调度任务中,选择表选择多张表配置一个调度任务,减少idmaping次数和。加快多张表导入

QA调度任务实时检测配置

  • 如果您需要及时了解调度任务状态,可在【Quick Audience-配置管理-高级设置-实时检测告警】模块,配置钉钉实时检测告警,该配置可实时检测任务超时和失败原因(如预期时间内未完成任务告警,需创建钉钉告警群,并配置webhook机器人)。