历史版本3 :Greenplum数据源特性说明 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

使用限制编辑

无论是否配置「并行装载设置」项,在进行数据开发时,要注意大小写规范,最好是统一为大写格式,否则会出现报错;比如在进行数据查询时,将查询内容统一大小写或者将查询内容加引号。

注:针对不同数据库的特性,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 版本新增)

1)选择该方式时,支持写入二进制字段、JSON 字段

2)写入方式选择「直接将数据写入目标表」时,目标表有主键或配置主键映射后,支持三种主键冲突策略:主键相同,忽略输入源的数据主键相同,记录为脏数据主键相同,覆盖目标表的数据

3)开启 脏数据容忍 后,COPY 装载方式失败后,需要尝试将该批数据使用「普通装载」写入,写入异常将统计进入脏数据,当前这一批数据写完后,下一批继续优先尝试使用 COPY 进行装载

关闭脏数据容忍后,COPY 失败时直接报错,不再降级至普通 JDBC 处理

若选择 COPY 装载方式,需要在目标数据库先创建 fdl_temp 模式用来存放临时表,需要用户有建表、建指定模式的权限(如果已由 DBA 建好模式并赋权,数据库用户可不需要建schema的权限)

普通装载以 JDBC 做串行装载

定时任务中特殊场景说明:

特殊场景
处理策略
COPY方案装载时,源端待装载的单批数据中,存在 N 条(N>1)主键相同的数据。

一批数据中多条源端数据,更新目标端的一条数据,不知道要用哪条更新,造成装载异常

默认取首条数据,如果数据异常,用户可以在前置步骤中手动去重
并行装载方案装载时,源端待装载的单批数据中,存在N条(N>1)主键相同的数据。

一批数据中多条源端数据,更新目标端的一条数据,不知道要用哪条更新,造成装载异常

开启了脏数据容忍,COPY失败的时候转 JDBC ,然后装载速率变很慢

情况一:

如果用户同步的字段中没有二进制字段,可以考虑使用并行装载方式

情况二:

如果用户同步的字段中有二进制字段,则只能接受此问题,采取以下方案:

  • 关闭脏数据容忍

  • 开启脏数据容忍,设置比较小的脏数据容忍量

  • 开启脏数据容忍,配合任务超时控制任务执行时间

数据管道

4.1.1 及之后版本,Greenplum 数据源作为源表,支持 无主键同步

数据管道任务中支持写入至 Greenplum 数据库。管道任务配置请参见:数据管道概述

数据服务

数据服务支持 Greenplum 数据库,但需要配置「并行装载设置」项。数据服务请参见:数据服务概述