反馈已提交

网络繁忙

数据转换问题排查

  • 文档创建者:Roxy
  • 历史版本:28
  • 最近更新:Wendy123456 于 2024-11-06
  • 数据转换

    运行日志报错:超出内存限制

    问题描述:

    任务运行失败,报错超出内存限制。

    18.png

    原因分析:

    数据开发所占用的内存资源超过工程设置的上限。

    解决方案:

    可以根据实际运行任务情况,参考 机器要求 适当调整 Tomcat的JVM内存负载分配

    API 输入

    API取数数据预览报错:Http request error- Read timed out

    问题描述:

    使用API取数,点击「数据预览」报错 Http request error,如下图所示:

    19.png

    原因分析:

    FineDataLink  默认超时是10s,耗时长的api会提示超时。

    解决方案:

    参考使用FDLTimeout参数 文档,在API Header 内使用 FDLTimeout 字段设置超时时间。

    API 输入运行报错 json format is illegal

    问题描述:

    使用API取数,点击「数据预览」报错 json format is illegal,如下图所示:

    20.png

    原因分析:

    4.0.20 版本中加了json格式校验,API 的 body 请求中不再支持写入注释。

    解决方案:

    清除 body  中的注释即可。

     4.0.21 已经支持使用使用注释,可升级工程解决。

    21.png

    API输入报错:PKIX path building failed

    问题描述:

    API输入报错:PKIX path building failed

    解决方案:

    关闭 SSL 认证。详情请参见:API输出逻辑说明

    数据关联

    运行日志报错:Spark执行错误

    问题描述:

    任务运行失败,报错提示[数据关联]: Spark执行错误- org apache spark sql. execution joins .exception.N2NInterruptException - null

    22.png

    原因分析:

    spark 保护机制,避免数据量极速膨胀触发服务器宕机,通常在关联结果膨胀超过5倍 + 关联数据量大于 1kw出现,属于正常现象。

    满足下面所有条件,判定为不合理场景:    

    1)存在N:N的情况    

    2)N:N步骤的结果数据量超过1kw     

    3)N:N膨胀系数>=5

    例如,100w 数据和 500w 数据N:N结果为2000w数据,那么N:N膨胀系数为: 2000w/500w =4,或者2000w/100w =20

    关联中的字段名称大小写与数据库不一致

    问题描述:

    数据库中的表字段和数据关联中获取的字段名称大小写不一致。

    原因分析:

    数据关联获取的字段名,是由上游节点数据预览结果而来。

    若DB表从数据库获取表字段时,混淆了大小写,此处便会不一致。

    解决方案:

    检查数据关联上游节点的字段获取过程。

    DB表输入/输出

    运行日志报错:Data write error - connection disables

    问题描述:

    输出数据库为GreenPlum(并行装载)时,运行报错Data write error - connection disables

    1715674481610488.png

    原因分析:

    gpdfist 文件不支持放置路径有空格

    解决方案:

    放置文件的路径下有空格,换个文件夹放置,并重启gpfdist进程,配置并行装载方案详情参见:配置Greenplum(并行装载)数据源

    任务执行成功但写入数据不全

    问题描述:

    用户将两个来源的数据通过「Spark SQL」算子 union 后写入到目标表,写入方式为「清空数据再写入」,发现写入的数据不全,只写入了一张表的数据。

    24.png

    原因分析:

    数据写不全原因:目标表存在唯一索引(自增 ID 主键),写数时索引冲突。

    任务执行成功原因:FineDataLink 写入方式选择「清空数据再写入」时,遇到冲突会默认跳过。

    DB2 数据库SQL语句中的as为中文名不生效

    问题描述:

    任务运行失败,报错超出内存限制。

    DB2 数据库SQL语句中的as为中文名在数据输出时字段映射没有生效。

    30.png

    解决方案:

    FDL4.0.22.1版本已经修复该问题。建议升级至该版本。

    使用DB表输出算子,无法选中impala数据连接

    问题描述:

    使用「DB表输出」算子,无法选中 impala 数据连接,使用DB表输入算子可以选中。

    原因分析:

    impala 数据库由于 jdbc 速度过慢屏蔽了输出功能。

    解决方案:

    建议将数据输出到配置 hdfs 装载的 Hive 数据库中。详情请参见:配置Hadoop Hive(HDFS)数据源

    简道云输入

    运行日志报错:try request out of limit. DB表输出:Runtime internal error. -null

    问题描述:

    1715674547848415.png

    解决方案:

    在 配置简道云数据源 中将简道云数据连接请求失败重试次数调整的略大一些,默认值为5.

    26.png

    运行日志报错Table doesn't exist

    问题描述:

    任务运行失败,日志报错Table doesn't exist

    27.png

    原因分析:

    简道云字段过长,字段类型不匹配

    解决方案:

    通过字段设置修改对应字段的长度

    SparkSQL 

    数据预览报错:SparkSQL语法错误: Syntax error at or near 订; line 1 pos 18

    问题描述:

    数据预览界面报错SparkSQL语法错误: Syntax error at or near 订; line 1 pos 18

    28.png

    原因分析:

    SparkSQL 不支持中文字段

    解决方案:

    在语法中去掉中文。

    sparksql 使用count 计数只显示5000条

    问题描述:

    sparksql 算子中,使用 count 计数后预览只显示 5000 条。

    原因分析:

    sparksql 算子中,预览采样 5000 条进行计算,避免数据量过大导致服务器压力大,实际运行会根据实际条数来

    无法编写SQL语句

    问题描述:

    sparksql 算子中,无法编写 SQL 语句。

    原因分析:

    使用的浏览器为:chrome79 内核版本的奇安信浏览器,浏览器版本过低。

    解决方案:

    升级浏览器版本。

    SAP RFC 输入

    运行日志报错:The current pool size limit is 10 connections.

    问题描述:

    使用FineDataLink从SAP抽取数据,超过10个任务后面的任务报错:The current pool size limit is 10 connections.

    原因分析:

    这是SAP服务器配置了最大连接限制

    解决方案:

    请参考SAP相关配置说明,修改最大连接限制:配置 SAP 服务器的最大连接限制

    执行速度过慢,且超时报错

    问题描述:

    SAP RFC 取数很慢,当取数超过 1 小时,定时任务会直接中断。

    原因分析:

    SAP RFC 函数数据量大,执行逻辑比较复杂,导致执行时间久,超时报错

    解决方案:

    优先通过优化 RFC 本身的性能,或者通过直连底层库解决:

    • 增大 sap 系统的超时时间解决报错问题

    • 通过多表并发执行减少整体耗时

    SAP取数获取值少于预期

    问题描述:

    使用SAP RFC 输入算子取数,取出的数据条数比预期数据少。

    原因分析:

    FDL 服务器端语言为 EN,rfc 函数 abap 程序中使用登录语言参数作为查询条件。

    解决方案:

    FDL 服务器端的语言需要和 SAP 服务端的语言一致。

    将 SAP 服务端的默认语言改为 EN 即可。

    SAP返回值###不显示,字段拆列运行窜列

    问题描述:

    SAP 数据为Lily###Alice,FDL 读取后显示为空。

    使用字段拆列算子(拆分符为 ~ )后预览正常(显示为 Lily Alice),但写入 Hive 数据库后,Lily Alice 通过三列展示(Lily 一列,空格一列,Alice 一列)。

    原因分析:

    SAP 数据中的 ### 并不是 # 字符,而是 tab 分隔符,因此在 FDL 中不显示为正常现象。如果需要写入 Hive,有以下两个方案:

    • 方案一:「SAP RFC 输入」算子后接「Spark SQL」算子,替换tab分隔符,示例:select regexp_replace(WA, ' ', ' ') as aa from sap输入

    • 方案二:目标表更换一下,使用 FDL 自动建表/重新建表。

    读取SAP数据,部分字段为空

    问题描述:

    使用「SAP RFC输入」算子去获取 SAP 数据,发现部分字段是空的,SAP 数据库那边是有数据的。

    原因分析:

    FDL 中 SAP 数据连接设置的语言和 SAP 服务端语言不一致,保持一致即可。

    MongoDB 输入

    节点运行报错null

    问题描述:

    FDL4.1.0及之前的版本,如果mongdb输入选择条件过滤查询方式,配置之后,再选择其他查询方式保存,升级到4.1.1-4.1.6.4任意版本,会出现节点运行报错null

    解决方案:

    手动修改dp文件,将mongodb输入节点的filter值置为null

    29.png

    新增计算列

    报错:该操作符两端必须为数值类型

    问题描述:

    「新增计算列」算子中,公式中包含内置参数 loopTimes,预览正常。

    2.png

    执行时报错:Spark算子计算错误 - formula check error - 字段[b]的公式校验失败:[:该操作符两端必须为数值类型

    原因分析:

    目前所有的内置参数都当作文本格式处理。

    解决方案:

    使用 TOINTEGER 公式转换字段类型。

    文件输入

    通过文件修改时间筛选文件,筛选结果不对

    问题描述:

    「文件输入」算子中,通过文件修改时间筛选文件,筛选 2023-05-22 11:48:30 之前的文件,最终 2023-05-22 11:48:59 的文件被筛选出来。

    原因分析:

    「文件修改时间」的精确度仅到分钟,暂时无法精确到秒级别。

    数据比对

    数据比对后数字后自动加上.0

    Oracle 数据表中字段 ID 为 number 类型,使用包含该字段的数据表数据比对后,ID 字段后自动加上.0。如下图所示:

    1714441627163514.png

    产品逻辑:

    经过 Spark 计算后会出现上述问题,但不会影响计算结果。针对该问题,产品后续会优化。

    火狐(firefox)浏览器中不显示数据比对的预览样式

    问题描述:

    火狐浏览器中,不显示数据比对的预览样式。如下图所示:

    1714441666130341.png

    原因分析:

    浏览器支持 has 特性,数据比对的预览样式才能显示正常。

    火狐浏览器的 103 及之后版本,实际已经支持 has 特性,但默认为关闭状态,需要通过以下步骤进行开启:

    1)地址栏输入about:config,进入设置界面。

    2)搜索layout.css.has-selector.enabled,将其值切换为 true。

    21.png

    3)进入 FDL 工程,在「数据比对」算子中预览,发现样式正常。

    数据比对结果不正确

    问题描述:

    定时任务中,简道云数据与数据库数据进行比对后,将数据变动更新到简道云表单中。

    数据没有变动,但比对结果为 Changed。

    1728472702641788.jpg

    原因分析:

    简道云表单无法存储 null 值,null 值和空字符串上传到简道云都会被转为空字符串。

    数据库中数据存在 null 值,第一次上云 null 值转换为空字符串保存在简道云表单中,第二次进行数据比对时,数据库数据为 null 值,简道云表单中为空字符串,所以比对结果为 Changed。

    解决方案:

    将数据库中的 null 值数据,转化为空字符串后再进行比对。

    数据集输出

    数据来源端中断退出

    问题描述:

    使用「数据集输出」,输出到 BI 公共数据时,报错:数据来源端中断退出。如下图所示:

    2.png

    原因分析:

    50051 端口没开放,开放即可。

    JSON解析

    XML解析

    附件列表


    主题: 数据开发-定时任务
    • 有帮助
    • 没帮助
    • 只是浏览
    • 评价文档,奖励 1 ~ 100 随机 F 豆!

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭



    AI

    联系我们
    在线支持
    获取专业技术支持,快速帮助您解决问题
    工作日9:00-12:00,13:30-17:30在线
    页面反馈
    针对当前网页的建议、问题反馈
    售前咨询
    采购需求/获取报价/预约演示
    或拨打: 400-811-8890 转1
    qr
    热线电话
    咨询/故障救援热线:400-811-8890转2
    总裁办24H投诉:17312781526
    提交页面反馈
    仅适用于当前网页的意见收集,帆软产品问题请在 问答板块提问前往服务平台 获取技术支持