反馈已提交

网络繁忙

数据开发FAQ

  • 文档创建者:Wendy123456
  • 历史版本:17
  • 最近更新:Wendy123456 于 2024-05-14
  • 1. 概述

    本文档收集数据开发模块的常见问题,并给出答案。

    2. 数据开发模块功能咨询

    分类常见问题
    解决方案
    数据同步VS数据转换
    「数据转换」节点能实现数据同步功能,那「数据同步」节点单独拿出来的意义是什么

    37.png

    详情请参见:数据同步与数据转换的区别


    「数据同步」节点简单的处理也做不了吧,比如增加写入时间,或者增加一个固定值列只能通过 SQL 语句实现,但复杂的 SQL 语句会造成抽数的压力
    数据开发VS数据管道

    1)「数据开发」功能也能实现对原表的更新同步,与「数据管道」功能有什么区别吗

    2)「数据管道」和「数据开发」有什么区别,我看都可以实现数据的同步


    • 数据管道」可实时同步,「数据开发」功能是定时同步

    • 「数据管道」支持对数据源进行单表、多表、整库数据的实时全量和增量同步,「数据开发」只能一张表一张表进行同步

    • 「数据管道」不能做复杂的数据处理,「数据开发」可对数据做复杂处理

    定时同步的话能做批量同步么,目前好像只能一张一张选择呢定时任务目前不能做批量同步,批量同步可以在管道任务做
    其他任务中的节点会顺序执行吗是的
    一个定时任务同步多张表如何实现使用多个数据同步节点实现
    FineDataLink 数据开发一次最多可同时执行多少个定时任务FDL 能同时执行的任务数跟 cpu 的线程数有关,默认是 cpu 线程数的 1/2 。假如 cpu 线程数为 8,FDL 则可以同时执行 4 个定时任务,若定时任务数有 5 个,另外一个需要排队
    帆软能检测数据库字段的变化吗,比如某个字段更新了能记录更新的时间吗

    管道任务支持的:数据管道-同步源表结构变化

    定时任务会将源表变化通知给用户,支持用户在任务中对目标表进行字段处理,更新目标表结构:定时任务DDL同步

    3. 数据开发

    3.1 支持的数据库

    注:针对不同数据库的特性,屏蔽不支持的功能入口,详情请参见:不同数据源的功能支持说明

    常见问题
    解决方案

    1)请问 FDL 支持哪些数据库

    2)请问下 FDL 支持这里哪些数据库:Essbase、Mondrian、IBM Cubing Services、Jedox Palo、Kyligence、Tinysoft

    3)支持高斯DB吗

    4)支持 sap hana 吗

    5)是否支持 BI 中公共数据集

    6)是否支持mongdb

    7)hive数据源可以连接吗

    8)能对接星环数据库吗

    9)数据源支持华为的高斯数据库吗

    请参见文档:FineDataLink支持的数据源
    星环写数据表的时候只支持这张表是外表类型吗,其他类型的表支持吗,星环的 hive 表有好几种是的,星环作为写入端使用时,只支持 hdfs 装载,通过先建立外表到 hdfs ,然后再装载到目标表

    详情请参见:配置TRANSWARP INCEPTOR数据源

    FDL 的 gp 并行装载功能怎么用的啊,单纯的表输出,速度有点慢请参见文档:配置Greenplum数据源

    1)请问 FDL 支持将服务器上的 Oracle 数据同步到另一个服务器的达梦数据库吗

    2)SQLServer ,MySQL,Oracle 都支持把数据同步到 ClickHouse 的嘛

    支持的

    若希望 A 数据库数据同步到 B 数据库,在 FineDataLink支持的数据源 文档中查看,FDL 是否支持对 A 数据库的读取和 B 数据库的写入

    服务器本地目录怎么添加请参见文档:配置服务器本地目录数据连接
    数据连接没有服务器本地目录服务器本地目录只有超级管理员才可以首次创建
    怎么连接到 postgresql 呀

    请参见文档:配置PostgreSQL数据源

    服务器数据集指的是啥请参见文档:服务器数据集

    数据转化数据源不能选择 impala

    impala 数据连接配置成功了数据源不显示

    没有进阶-大数据的功能点
    使用 sql 脚本在 MySQL 数据库中执行语句,之后中文部分在数据库中显示????

    修改数据连接配置,编码为默认,url后面加?useUnicode=true&characterEncoding=UTF-8&useSSL=false

    注:若出现日期错乱和中文乱码情况,请参见:具体连接步骤

    3.2 数据输出到 BI

    常见问题
    解决方案

    1)数据开发调度执行完,公共数据集里面的数据会自动更新

    2)FDL 任务往 BI 输出数据

    3)FDL 可以同步数据到 BI 嘛

    请参见文档:

    集成部署下定时任务结果输出至FineBI

    独立部署下定时任务结果输出至FineBI

    数据输出到BI,也得先输出到 DB 表么,DB 表这步能不能略过是的

    3.3 消息通知

    常见问题
    解决方案
    1)邮件服务器怎么配置

    2)如何配置邮箱

    邮箱
    如何配置流程失败后发邮件或者短信通知
    短信这个是收费的还是免费的 ?一条多少钱 ?

    国内 6 分一条

    详情请参见:2.3.1 节内容

    开通 FDL 短信,充值 100 有时间限制的吗,还是充了 100 之后可以一直用有时间限制,不会清空的,只要有余额就能正常发短信
    请问 FDL 的消息可以发送给飞书第三方平台吗可以的,请参见文档:飞书
    企微 markdown 消息如何换行\n
    消息通知的内容,能否引用前面转换步骤的输出内容呢? 比如我转换后有个单号,想把它作为消息推送到企业微信,能引用到吗

    可以的,被引用的内容输出为参数,在消息通知中使用${a}的方式引用参数值

    最佳实践参考:一条消息通知同时提醒多人

    使用消息通知节点,给企业微信发送消息,消息的格式为表格形式,支持吗

    1715148998431840.png

    不支持的,企业微信不支持这种消息格式
    数据转换后面怎么进行消息通知退出「数据转换」,后面新增一个消息通知节点即可
    邮件不通知平台用户需要绑定邮箱账号
    消息通知可以设置成失败时候通知吗通过 连线判断 就行了,失败时执行

    3.4 条件分支

    常见问题
    解决方案
    请问FDL 条件分支怎么用的请参见文档:条件分支
    你好咨询一下条件分支里面字符串的判断没有等于只有属于吗属于包括等于

    3.5 循环容器

    常见问题
    解决方案
    循环容器的次数设置大了也无所谓吧是的,上限为 10000

    1)我们循环里面可以套循环吗

    2)麻烦问下我们 FDL 支持嵌套循环吗

    暂时不支持,有替代方案,可参见:API取数-慧策接口获取库存全量数据

    1)我这边怎么得到循环的次数

    2)怎么拿到循环的次数

    请参见文档:

    ${loopTimes}——循环容器当前循环次数

    API取数-按页数取数

    怎么查看循环容器循环了多少次日志中有对应的次数
    循环容器能够引用的参数是只能是前面步骤传递过来的吗

    不是,还有内置参数自定义参数


    循环容器内赋值的参数不能给外面用吗容器内参数仅可在容器内使用,不可向容器外传递
    循环容器的执行记录只展示最近的五次循环好像,那之前的有错误的话,在哪边能看到完整的记录

    可以在 fanruan.log 中查看到完整的,但是要看您的日志级别,如果是error的话,看不到完整的循环记录,只有错误的。要开 info 才可以看到完整的循环记

    详情请参见:日志等级设置

    循环容器有没有办法让他失败了继续执行4.1.1 及之后版本支持,详情请参见:循环容器逻辑说明

    3.6 调度配置

    常见问题
    解决方案

    1)定时调度如何设置

    2)设置定时任务的频率不知道在哪里设置

    请参见文档:定时任务调度配置
    如果多个任务,配置的定时运行时间是不是要错开建议错开
    如果都配置为同一时间,一起运行时,数据库压力会不会比较大是的

    1)FDL 的任务可以配置失败自动重启吗

    2)由于网络不稳定导致任务失败,能不能设置自动重新连接或者重新启动啊

    可以的,请参见文档:失败重试

    1)我这边想实现:任务执行失败了进行邮件或者企微提醒要怎么做

    2)FDL 数据开发里面,如果任务报错,怎么设置消息通知呢,我这是串行的,如果前面的报错就停止了,根本走不到消息通知这里

    3)任务失败如何通知

    结果通知
    数据开发调度配置打不开需要注册调度功能点
    只能给定时任务设置一个执行时间嘛
    可以设置多个

    1)一个任务定时 5 分钟跑一次,第一次 10 点执行,如果这次 5 分钟没跑完,那 10:05 那次会自动跑吗

    2)如果设置一个调度,比如1分钟执行一次,如果前一个任务1分钟未执行完,下一个任务会等它吗

    顺序执行,执行完毕才会开始下一次执行,在此之前,任务都是在排队中
    执行频率表达式Cron表达式设置
    FDL 同步 MySQL 数据库数据,同步频率可以设置 1 秒么任务多的话不建议,同时还要看数据库的性能,性能不太好的话也不建议
    调度频率可以设置到5到10秒级别吗最小间隔是1分钟

    3.7 调用任务

    常见问题
    解决方案
    1)比如 A 作业运行成功,才能运行作业 B

    2)如果有 2 个任务我们如何进行关联和依赖:任务 1 和任务 2 有数据有依赖关系,比如任务 2 的数据依赖与数据 1 的更新,我们如何实现

    3)我在一个任务里面怎么调取另一个任务

    4)可否设置不同任务的调度顺序

    5)请问FDL支持A任务跑完执行B任务吗

    调用任务 节点实现
    如何查看被哪些定时任务调用了任务关系

    3.8 参数相关

    常见问题
    解决方案
    在参数设置中新增日期参数,值可以为yyyy-mm-dd,但

    输入其他常数(如2023-08-30)都会报“格式与类型不匹配”的错误,导致无法保存

    参考文档:自定义参数

    自定义日期需要基于系统时间获取,只能写 yyyy-mm-dd 这种;如果希望值是常量,参数用文本类型

    我设置了一个参数赋值,然后表同步引用该参数名字,但没有预览成功默认值得填写正常可以读取到的值才能预览成功
    数据预览时是不是不能调用前一个算子里获取的参数可以调用,如果需要能够预览必须要在输出参数时设置个默认值才能预览成功
    参数输出 的参数,是不是在当前任务下都是可以用的是的,建议加一个默认值,不然后面节点/算子数据预览的时候值是空的
    使用 参数赋值 输出的参数,无法预览参数赋值中没有设置默认值
    参数跨层传递的时候,第一层第二层和第三层,配置第二层的时候怎么获取第一层的值参考 3.1.2 节说明
    时间参数 ${cyctime} 的值可以改吗

    这个值是取任务运行时的时间数据,属于是默认值改不了

    但是可以在写 SQL 的时候用数据库提供的时间函数改值,比如 MySQL 中的 DATE_SUB 函数进行时间的加减

    你们${cyctime}这个时间精确到秒的,能不能只精确到天请参见文档:自定义参数

    1)在哪里设置全局参数

    2)可以自己设置一个全局参数,作用于所有任务吗,而不需要一个任务一个任务去调整

    全局参数

    进入数据开发界面,点击1714463362927061.png按钮,可进入全局参数配置界面

    参数可以设置为:上一个月的第一天和上个月的最后一天吗参考:获取上月末、上年末等作为参数使用
    通过API获取token后,已经设置为参数,在后续取数使用${} 获取不到参数更新下参数的默认值
    数据库取出来的数值变成参数后,我在下一步的数据转换中如何获取这些数据呢?请参见:参数赋值示例
    参数赋值节点,输出的参数限制多少个10000个
    在第一个AP获取到Token,怎么把这个Token传给其他接口呢用 参数输出 算子
    跨任务流之间可以参数传递吗全局参数调用任务都可以的
    引用参数,预览显示空预览值为空,是因为,参数默认值没有填写;因为任务还没有实际运行,没有参数传过去,所以预览为空,可以通过填写默认值,查看预览值

    3.9 数据输出

    常见问题
    解决方案
    输出的时候可以选择字段进行输出吗字段映射可以把不需要的字段删掉
    没有主键冲突策略因为你是自动建表,表里没有数据,不会冲突,也没有主键
    表名称没有选项若选择「自动建表」,未指定模式时,会使用数据库默认模式,而不是数据连接中的模式
    对于 pgsql 、oracle 数据库,DB表输出的数据去向中怎么选择模式,我的数据连接已选择了默认模式,但是表输出结果还是在 public 里在表名前增加对应模式名
    目标库已存在的表是不能选择自动建立表,要不然就无法自动同步数据是的,已经存在的表不能再「自动建表」
    自动建表,还能多次运行,每次运行都重新创建表?自动建表的逻辑:是判断当前有没有这张表,如果没有就新建,后续的话,可以判断这张表是否存在,实现增量的写入,所以是可以多次运行的
    清空目标表,再写入:我理解是先清空表数据,再写入?对的,直接先把目标表清空掉,然后再写入数据

    1)原来 FineTube 里一份数据可以同时输出多次的,FDL 里这个功能也没有了

    2)一个数据转换只能有一个输出吗

    请参见文档:数据分发

    3.10 接口调用

    常见问题
    解决方案
    1)怎么实现:报表页面上有一个按钮,点一下这个按钮,就能执行 FDL 的一个定时任务

    2)FR 可以调度 FDL 任务吗

    3)把定时任务作为一个接口,手动触发,这个功能是不是还没有实现

    4)请问下,FDL 的 API 功能,我发现基本上是由 FDL 主动发起,并接收数据;想问一下是否有被动接收的方式来获取数据呢

    5)报表填报成功触发定时任务运行

    6)外部系统调用 FDL 任务运行

    7)FDL能不能调用第三方接口,执行定时任务呢

    8)fdl的调度能不能外部触发?比如API触发

    9)有没有手动调用fdl任务去执行的功能

    10)有没有手动调用fdl任务去执行的功能

    11)外部业务系统怎么触发FDL主动执行任务

    请参见文档:调用定时任务相关接口说明

    1)点击按钮后,同步数据

    2)在fr的或者BI的报表端启动fdl的任务 在报表上点一下,然后对应的fdl任务能够启动

    FR模板调用定时任务接口示例
    开放平台-FineDataLink接口插件安装不上先安装开放平台插件
    我用report 中的按钮去调用fdl的任务,fdl运行成功或者失败能给report一个提示吗FR调用定时任务后轮询是否完成

    3.11 其他

    常见问题
    解决方案

    1)那老师再问一下,我最终输出的数据可以是以 API 输出吗? 就是输出成 API,然后提供给别人调用

    2)FDL 支持 API 发布吗

    请参见文档:数据服务
    1)FR、FDL 独立部署,但集中管理,是否有这样的方案

    2)您好,如何把 FR、FDL、BI 集成在一个页面上

    3)请问账户无缝跳转是需要插件吗

    请参见文档:多产品连接工具插件
    数据转换如何重命名右键节点可以修改
    请问加入企业怎么操作呀请参见文档:合作认证操作说明
    想问一下 RFC 输入可以获取 SAP 标准函数吗请参见文档:带参数的SAP RFC取数
    FDL 的任务只能每个单独配置嘛?不能复制吗支持的,支持复制任务或节点
    自己还不能建文件夹对任务进行分类的吗先建文件夹,再选中文件夹建任务
    资源控制内存指什么呢?请参见文档:资源控制

    1)DB 表输入的数据我想改一个字段的值,该怎么操作

    2)我想将一个表格中数据,多个字段转换成对应的字典表的id,有什么好的方法吗,男转为:0,女转为:1,是否已婚,是转为:0,否转为:1

    新增计算列
    定时任务报错有脏数据,怎么判断脏数据在什么阶段出现的,目标库是不是写入了部分数据
    要看脏数据是什么时候被识别到的,可以查看统计,如果写入 为0 就是一开始就识别到脏数据了
    写入方式是什么请参见:数据同步-写入方式
    清空目标表,再写入数据,对于MySQL来说是执行的什么命令清空的数据TRUNCATE语句
    FDL可以做单点登录吗可以的,可在FR文档中搜索相关知识
    在数据库中写SQL查询,预览结果是对的;在数据转换算子中使用相同SQL预览,结果不对
    预览只能预览部分数据的,不是全量;实际运行是全量
    选sql 与选表的 2种方式有什么区别吗

    SQL:可自定义SQL语句,处理数

    选表:类似于实现select + where 的效果;支持开启并行取数

    如果导入数据发现已存在,怎么跳过,不导入数据库设置主键,写入方式选择「追加写入目标表」,主键冲突策略选择「主键相同,忽略输入源」的数据
    fontconfig不存在Linux系统没有中文语言环境和字体,参考文档:Linux系统设置中文语言环境和字体
    怎么给新加的字段截取数据请参见:RIGHT-截取后几个字符串
    定时任务的执行记录是存在哪里的

    4.1.7.3 之前版本,保存在 FineDB 的fine_dp_work_exec_record表

    4.1.7.3 及之后版本,保存在 LogDB 的fine_dp_work_exec_record表中(该表迁移到 LogDB 中)

    怎么向分区表中导入数据读取、创建、写入分区表

    1)fdl能写java脚本吗

    2)调用服务器上的kettle

    使用 Shell脚本 算子
    Shell脚本 算子调用java脚本,是不是还要部署一个能跑java的环境java 脚本封装成 .sh 文件后,在远程服务器上能跑通就行,.sh 文件所在服务器上肯定要有 java 环境才能跑。FDL 调用 .sh 文件即可

    3.12 需求方案类

    问题
    解决方案
    我在数据开发的过程中通过 SQL 来处理数据,如果 SQL 执行失败了是否支持回滚等操作参考下这个方案呢:数据抽取失败后进行数据回滚
    获取天气数据使用高德接口获取城市天气数据
    请问我需要通过 API 获取数据,有行数获取限制的,页码的最大值我目前获取不到,请问能用什么方式取到所有的数据API取数-限制取数量且无页数参数

    1)我有个问题:接口文档给出每页100行,怎么样实现逐页抓取

    2)客户这边数据条数过大,会分页,咱们 API 怎么做到增量或着全量取数

    API取数-按页数取数
    我想做增量抽取数据,每天运行时抽取昨日的数据
    API 双层嵌套的场景API取数-慧策接口获取库存全量数据

    工程占用内存过大,给工程瘦身

    批量删除运行记录

    自动清理FineDataLink运行记录
    1)客户有一个 FTP 服务器,里面存放的是命名标准的 Excel ,我们 FDL 能不能自动定时的获取新的 Excel ,然后输出到数据库中

    2)FDL 可以实现遍历抽取某目录下 Excel 文件数据到数据库表吗

    3)我想了解 FDL 的一个关于 excel 录入的功能。能否指定一个目录下某一个名字类似的文件读取入库,而且定时任务只要启动,就会到对应目录下找到这一类文件

    定时批量扫描文件同步数据

    1)如何进行增量更新,通过数据开发那个模块怎么进行基于主键进行增量同步啊

    2)表输入按时间戳增量怎么实现

    数据增量更新
    一个销售下面有多个异常订单,我要怎样设置,可以实现在群里艾特销售,后面会发送这个销售名下的异常订单

    使用参数取出对应消息,在消息通知节点中引用参数即

    一条消息通知同时提醒多人一条消息提醒一个人,可发送多条消息

    例如 API 返回值为 1、2、3,希望新增一列参数ID
    使用 新增计算列 算子,新增一列,值为参数ID
    有什么组件,能够直接把sql结果下载到用户操作的本地么,相当于excel下载到本地了使用 文件输出 算子
    使用参数从API接口取数,每次只能查询一个参数对应的值,有什么批量的方法吗可以循环取数,参考API取数-钉钉获取部门列表
    怎么过滤出变化的数据使用 数据比对 算子标记出新增、修改、删除、相同的数据后,筛选出 fdl_comparison_type 字段值为Changed(更新)、Added(新增)、Removed(删除)的数据即可
    A表有字段a,值格式为001,002,值是用逗号拼接起来的。现在希望A表的左值能与B表的b1字段关联A表字段进行 字段拆行
    源表新增了字段,字段映射中提示:新增的字段没有映射关系到目标表所在的数据库中,目标表也新增该字段,重新获取映射关系即可
    怎么自定义字段类型

    方案一:使用 字段设置 算子修改字段类

    方案二:在新增计算列算子中使用公式修改字段类型

    有什么方法可以针对所有字段进行去重呢数据去重
    怎么做到一个任务跑完后等待10s后再下一个任务呀拖入一个「SQL脚本」节点,执行语句:select sleep(10)
    我想把一个文件夹内所有文件全部提取后,分割处理后存入三张表,应该怎么设置使用数据分发,一个输入接三个表输出就行了
    从文件夹取出来10行3列的数据,能否转置成3行10列呢行转列
    我想解析一个json,但是json中有多个嵌套,如何解析成一条数据呢?如何一次性解析完成呢? 目前看json解析的模块不支持多分支解析

    使用多个josn解析算子,一层一层的解析,保留上层字段

    同步数据怎么加时间戳SQL 脚本、新增列算子、SparkSQL中都可以的:时间戳
     只做数据同步的话 怎么才能基于标识字段去更新删除呢数据同步-基于标识字段,追加/更新/删除数据
    在数据开发中第二个API需要第一个API的结果作为入参,在数据开发中如何设计第一个数据转换api取数后输出参数,再接一个数据转换通过${参数名}引用。如果参数有多值,可能还需要用到循环容器
    SparkSQL中获取了当前时间,怎么把类型从date转为string可以用sql语法的cast去转类型,也可以用我们的「字段设置」算子转varchar
    十三位的日期 把它格式化为2023-01-01 00:00:00使用新增计算列算子,转换格式:常见日期公式
    我想合并字段变成新字段,怎么弄在 Spark SQL 算子或新增计算列算子中,使用CONCATENATE-字符拼接函数
    忽略空值怎么处理可以加个数据过滤,当这些字段不为空的时候再流入到后面
    执行频率是否可以避开国定假仅在工作日执行定时任务

    3.13 SQL 语句

    问题
    解决方案
    Oracle 数据库存在 A 表,但使用 select 语句查询时显示不存在Oracle 查表表名要大写,表名小写的话要加双引号

    3.14 任务运维

    问题
    解决方案
    定时任务运行后,想看下执行的具体情况可以查看运行记录

    1)在哪里可以看到所有脏数据记录呢

    2)定时任务报错信息不全,日志里面怎么查全部报错信息

    日志 fanruan.log
    数据库时间和服务区时间不对FineDataLink服务器时间和数据库时间不一致
    任务运行报错不提示开了失败重试

    3.15 产品组合

    问题
    解决方案
    BI怎么调FDL的数据请参见:集成部署下定时任务结果输出至FineBI独立部署下定时任务结果输出至FineBI
    FDL 独立部署,DB表输出算子中,如果不勾选「输出至公共数据集」按钮, 是可以运行的 ,勾选后无法运行需要保证FineDataLink 中的数据连接在 FineBI 中也存在;两个数据连接完全一致,包括连接选择的数据库、模式等
    FDL能抽取bi那边的数据集数据独立部署下读取FineBI公共数据集成部署下读取FineBI公共数据
    FDL怎么给FR提供数据

    1)FDL将数据处理好后入库,FR从数据库中获取数

    2)FDL将处理后的数据以API形式给FR使用

    3)FDL将处理后的数据生成Excel文件,供FR使用






    附件列表


    主题: 快速入门
    • 有帮助
    • 没帮助
    • 只是浏览
    • 评价文档,奖励 1 ~ 100 随机 F 豆!

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

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

    不再提示

    10s后关闭

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