1. 概述编辑
1.1 版本
FineDataLink 版本 | 功能变动 |
---|---|
1.9 | - |
4.0.14 | 新增对节点使用用法提示,详情参见本文第二章 |
1.2 功能简介
「数据开发」模块支持在可视化界面使用各个节点和算子进行数据的抽取、转换和装载,并可以通过定时调度功能自动运行定时任务,帮助您轻松构建离线数仓,保证数据生产的高效稳定。
注:数据开发部分相关概念说明详情参见:数据开发概念
2. 功能概述编辑
2.1 支持的数据源
数据开发支持多种数据源,可以将多种来源数据进行数据处理和集成。
详情请参见:定时任务支持的数据源
2.2 任务管理
数据开发中通过「定时任务」存放设计好的业务流程。
通过「文件夹」对定时任务进行管理。
2.3 任务开发
提供「数据同步」和「数据转换」节点,实现数据高效灵活的 ETL 和 ELT。
价值场景示例如下说明:
1)实现跨数据源批量同步数据
2)提供多种数据转换算子,灵活处理数据
支持对异构数据进行数据关联、字段设置、行列转换、JSON解析、数据比对等功能,以满足多种场景下的数据处理需求。
注:下图中的算子介绍请参见本文第三章内容。
3)支持JSON解析,一键解析半结构化数据
4)支持Spark SQL,覆盖更多数据转换场景
数据转换可视化算子不够丰富时,可使用「Spark Sql」算子应对各类数据处理场景:
实现在FDL产品内便完成对各类数据源的加工处理。
支持左右关联、上下关联、分组汇总、排序等计算。
5)循环容器,支持对数据遍历循环
6)对接企微,实现数据找人
面对迅速变化的业务数据,为保证关键指标出现异常时快速做出业务响应,可使用消息通知对接企微,完成数据监控和预警。
7)支持 SQL 脚本,对数据库进行增删改
8)支持调用 shell 脚本,对接外部的独立数据处理过程
2.4 任务调试
通过手动执行任务,根据任务运行日志进行任务调试
运行日志详情参见:运行日志介绍
2.5 任务调度
提供了定时调度功能,可以定期自动运行定时任务,以保证数据能够及时更新。
开始时间:设置任务开始执行时间
执行频率:任务执行频率
结束时间:设置任务结束执行时间
结果通知:对调度任务运行后的执行结果,如果执行失败会进行通知
详细介绍请参见:定时任务调度配置
2.6 任务运维
任务支持灵活调度、运行状态实时监控,便捷的操作将会释放运维人员巨大的工作量。
运行记录:可以通过筛选和搜索的方式查看任务运行状态、运行耗时以及任务运行的历史日志。
任务管理:查看任务调度配置情况。
资源控制:限制「数据平台」占用的内存和带宽,减弱在集成部署下对 FineReport 或 FineBI 服务的影响。同时在独立部署时,可控制数据开发所占用的内存资源。
详细介绍请参见:定时任务运维
3. 节点介绍编辑
可通过下文的节点列表,了解各模块功能如何使用
节点是组成定时任务的基本单位,多个节点通过线条连接后可确定执行流程,进而组成一个完整的定时任务。FineDataLink 目前有如下节点:
节点的基本介绍如下表所示:
节点名称 | 应用场景 | |
---|---|---|
通用 | 数据同步 | 将数据从一个数据库抽取到另一个数据库 |
数据转换 | 可执行数据关联、同步删除数据等操作 | |
数据同步与数据转换的区别请参见:数据同步与数据转换的区别 | ||
脚本 | SQL脚本 | 写 SQL 语句对数据库中的数据进行处理 |
Shell脚本 | 通过执行 shell 脚本,对接外部的独立数据处理过程,例如调用Kettle任务、调用Python计算任务等 | |
流程 | 参数赋值 | 用参数承载上游节点运行的结果,然后在下游节点中使用该结果 |
条件分支 | 基于一个来自于上游或者系统的条件,判断是否继续运行下游节点或者运行下游节点里面的哪一个 | |
虚拟节点 | 希望多个节点可以并行运行后再转到下游节点,可借助该节点实现 | |
调用任务 | 可以在当前任务中调用其他任务,这样可以直接设置任务间执行的依赖关系,实现跨任务编排 | |
消息通知 | 可将任务调度结果以企业微信群机器人/邮件/钉钉/短信的形式通知给指定用户 | |
循环容器 | 可满足循环取数的场景 | |
其他 | ETL任务和节点添加备注 | 需要为节点或任务添加备注,例如在任务中备注该任务的具体使用场景。 |
鼠标悬浮至节点列表,会出现节点的用法解释,用户可快速查看当前节点任务用法。如下图所示:
4. 操作流程编辑
说明 | 文档 |
---|---|
配置定时任务设计时,数据读取和数据写入的数据源 | [通用]配置数据连接 |
创建定时任务,并进行定时任务的开发 | 参考各节点功能文档 |
设置定时任务定时自动执行 | 定时任务调度配置 |
通过手动执行任务,根据任务运行日志进行任务调试 | 运行日志介绍 |
对已经设置的定时任务进行任务管理和资源控制 | 定时任务运维 |
5. 注意事项编辑
5.1 SQL 语句注释说明
4.0.17 版本之前,FineDataLink 忽略对 SQL 语句注释的处理;4.0.17 及之后版本,SQL 语句的注释交给数据库执行。
用户需注意 SQL 语句注释的书写规范:单行注释之后要有一个空格;Hive 数据源不支持多行注释。
5.2 Vertica 数据库新建主键
Vertica 数据库 新建主键时,SQL 语句示例如下:
alter table KARA.user_test114 add primary key(CODE1) enabled
SQL 语句中包含 enabled ,FineDataLink 才能识别到主键。
注:vertica8 以下版本不支持主键以及 upsert 语法;vertica8 及 vertica8 以上版本支持主键及 upsert 语法。