1. 概述
1.1 版本
FineDataLink 版本 | 功能变动 |
---|---|
4.0.18 |
|
4.1.11.2 | YMatrix 数据库支持该功能 |
1.2 应用场景
在使用「数据管道」和「数据同步」、「数据转换」进行数据跨库同步时,由于业务数据的复杂性,导致来源数据库大小写混用、不同来源数据库默认大小写规则不一致,导致同步到目标库大小写不一致,管理和使用混乱。
用户希望通过 FDL 自动建表同步数据库至目标库时,能统一表名和字段名大小写,形成管理规范。
1.3 功能说明
FineDataLink 设计「数据管道」、「数据同步」、「数据转换」等任务进行「自动建表」同步数据时,表名和字段名支持大小写转换;表名、字段名支持大小写自动纠正。
1.4 约束限制
1)当前通用配置支持的数据源类型为:ClickHouse、GaussDB 200、Greenplum、Greenplum/Greenplum(并行装载)/FineData、Hive、Hive(HDFS)、HSQL、IBM DB2、Impala、Informix、MongoDB、MySQL、Oracle、PostgreSQL、Presto、SAP HANA、SQL Server、SQLite、达梦、华为 GaussDB 200、南大通用 Gbase 8A、人大金仓 KingbaseES、YMatrix。
2)「通用配置」仅超级管理员支持设置,不支持分配其他用户使用和管理权限。
2. 操作步骤
2.1 进行通用配置
点击「管理系统>通用配置」,点击「自动建表配置」,如下图所示:
选择指定的数据连接,来批量修改该数据连接对应数据库中的表名、字段名,如下图所示:
此处的「适用对象」支持选择的范围为「管理系统>数据连接」中已经设置的数据连接。
2.2 效果查看
进入数据开发并新建「数据同步」节点,将数据写入 2.1 节已经设置自动建表表名和字段名全部转大写的「FDLDemo」数据连接。
此时自动建立目标数据表,输入表名会自动修改为通用设置中的大写模式,同时字段映射中目标表字段名称也改为大写模式,如下图所示:
「数据管道」任务同理,此时自动建立目标数据表,输入表名会自动修改为通用设置中的大写模式,同时字段映射中目标表字段名称也改为大写模式,如下图所示:
3. 兼容说明
1)数据管道-选择已存在表/自动建表时的兼容
自动建表:当用户在配置任务时如果选择了大小写转换和前后缀设置,则应先按照用户的设置进行大小写转换和前后缀设置后,再进行自动建表,如果用户在进行前后缀前,已经对表名和字段名进行了操作,则覆盖;
2)数据管道目前的同步时间戳和逻辑删除标记字段默认为小写,这两个字段与用户的其他字段保持统一规则、跟随用户的大小写设置而变化;如用户如果开启全部大写设置,则时间戳和逻辑删除标记也应为大写。
3)当任务已存在,再开启大小写选项
数据管道:
对于未运行的任务,当数据连接的大小写设定为全大写或全小写时,字段名和表名按照「通用设置」生效。
对于已经运行的任务,「通用设置」不生效;
定时任务:
完全按照用户在界面配置的表名和字段名进行自动建表,「通用配置」不生效;
在用户选择新的数据去向后(包括重新选择),按照选择的数据连接的大小写设定进行规范表名和字段名,字段映射会被清空、等同于新建节点;
当用户在字段映射界面点击重新获取后,按照选择的数据连接的大小写设定进行字段名规范;
4. 注意事项
问题描述:
自动建表运行后,提示报表不存在。且自动建表运距复制出来无法执行。
原因分析:
部分类型数据库存在一些特定限制。例如 MySQL 数据库的 varchar 长度之和不能超过65535。
解决方案:
排查是否违反了对应数据库的规定,调整字段类型或长度。