用户可在完成数据连接之后,即可进行数据集的创建,可以支持直接使用原表创建数据集、多表 join/union 生成数据集,一些复杂逻辑可以使用自定义 SQL 生成数据集,以下介绍如何通过数据表/自定义 SQL 创建数据集。
(1)点击数据准备->数据集,点击左侧加号,选择「新建数据集」
(2)从已有数据连接中选择目标数据源,若无数据连接,可在数据连接中进行创建。
(3)选择表创建与 SQL 创建
数据源类型支持限制 | 数据库语法限制 | ||
---|---|---|---|
表创建 | 单表、JOIN/UNION | 所有数据源均可支持表创建 | 无限制 |
SQL 创建 | 单表 | 仅数据库来源支持,详细支持清单见数据连接 | 根据数据库类别,对 SQL 语法有限制,比如数据连接是 MySQL,不支持 Oracle 的语法 |
SQL 语句的创建可以在 SQL 输入框中直接手动输入;也可以在左侧表中选中数据库和数据表,鼠标 hover 到数据表上,可以选择插入表名、插入字段、插入查询语句,实现快速创建 SQL 语句的能力
提供格式化、解析、保存、展示预览、数据预览、字段名称、抽取设置功能
数据源限制:目前 ADB2.0、ADB3.0、DB2、 Phoenix、Vertica、Teradata、PostgreSQL、Greenplum 不支持参数配置,其他能创建自定义 SQL 的数据源都支持该设置
用户如果需要每次数据同步多天,比如指定同步第 1、3、7 天前的数据到该数据集中,则需要使用自定义 SQL 来创建数据集。
操作方法
(1)按照上述说明创建一个自定义 SQL 数据集
(2)点击上方同步设置进入同步设置页面,点击高级设置
(3)在高级设置中有同步多天的开关,选择开启同步多天,同时下方有同步多天参数设置的提示
(4)开同步多天后,返回模型配置页面,按照书写规范编写 SQL 即可,之后按照正常创建数据集的步骤配置完保存即可
功能说明
在自定义 SQL 面板中,点击左下角的变量说明即可看到默认变量的提示,即该自定义 SQL 中可以引入日期变量实现动态日期查询
SQL 书写规范
示例1 :
同步第1天以及第7天前数据
select user_id,country,city,gender, date as p_date #指定分区字段 from table A where date in ('${date}','${date-6}') #指定同步第1天及第7天前数据
示例2 :
同步最近7天数据
select user_id,country,city,gender, date as p_date #指定分区字段 from table A where date >= ${date-6} #指定同步最近七天数据
注意事项
如果是已经创建完成的数据集,开启同步多天后点击同步可能会出现一直等待依赖的情况