使用限制
无论是否配置「并行装载设置」项,在进行数据开发时,要注意大小写规范,最好是统一为大写格式,否则会出现报错;比如在进行数据查询时,将查询内容统一大小写或者将查询内容加引号。
注:针对不同数据库的特性,FineDataLink 屏蔽了不支持的功能入口。详情请参见:不同数据源的功能支持说明
任务开发
配置数据连接
详情请参见:配置Greenplum数据源
数据开发
详情请参见:数据开发概述
定时任务中设置数据输出到 Greenplum 数据库时。「写入方式」界面如下图所示:
「装载方式」介绍如下表所示:
装载方式 | 说明 | |||||||
---|---|---|---|---|---|---|---|---|
并行装载 | 1)gpfdist 默认使用 15500 端口 2)二进制类型字段不支持在勾选「启用并行装载」的时候同步 3)4.1.2 及之后版本,支持写入 JSON 类型字段 4)4.1.2 及之后版本,主键冲突策略可选择:主键相同,忽略输入源的数据、主键相同,记录为脏数据、主键相同,覆盖目标表的数据 5)开启 脏数据容忍 后,并行装载方式失败后,需要通过 GPLOAD 内置的错误表逻辑,获取到脏数据信息,正确记录脏数据;如果没有开启脏数据容忍,则节点直接报错 6)以 gpfdist 协议做并行装载,4.1.2 之前版本不支持插入/更新/删除数据写入方式,4.1.2 及之后版本支持该写入方式 | |||||||
COPY装载(4.1.2 版本新增) | 若选择 COPY 装载方式,需要在目标数据库先创建 fdl_temp 模式用来存放临时表,需要用户有建表、建指定模式的权限(如果已由 DBA 建好模式并赋权,数据库用户可不需要建schema的权限) 选择该方式时,支持写入二进制字段、JSON 字段
采用COPY装载方式+普通装载方式时: COPY 装载方式失败后,需要尝试将该批数据使用「普通装载」写入,写入异常将统计进入脏数据,当前这一批数据写完后,下一批继续优先尝试使用 COPY 进行装载 | |||||||
普通装载 | 以 JDBC 做串行装载 |
定时任务中特殊场景说明:
特殊场景 | 处理策略 |
---|---|
COPY方案装载时,源端待装载的单批数据中,存在 N 条(N>1)主键相同的数据。 一批数据中多条源端数据,更新目标端的一条数据,不知道要用哪条更新,造成装载异常 | 默认取首条数据,如果数据异常,用户可以在前置步骤中手动去重 |
并行装载方案装载时,源端待装载的单批数据中,存在N条(N>1)主键相同的数据。 一批数据中多条源端数据,更新目标端的一条数据,不知道要用哪条更新,造成装载异常 | |
开启了脏数据容忍,COPY失败的时候转 JDBC ,然后装载速率变很慢 | 情况一:如果用户同步的字段中没有二进制字段,可以考虑使用GP并行装载 情况二:如果用户同步的字段中有二进制字段,目前只能接受此问题 |
数据管道
4.1.1 及之后版本,Greenplum 数据源作为源表,支持 无主键同步
数据管道任务中支持写入至 Greenplum 数据库。管道任务配置请参见:数据管道概述
数据服务
数据服务支持 Greenplum 数据库,但需要配置「并行装载设置」项。数据服务请参见:数据服务概述