1. 概述
1.1 版本
FineDataLink 版本 | 功能变动 |
---|---|
4.0.4 |
|
4.0.14 | 部署包内置GP(并行装载)的gpfdist文件 |
4.0.15 | 数据管道输出适配 Greenplum、Greenplum(并行装载) |
4.0.20.1 | 数据服务适配Greenplum(包含并行装载) |
4.0.29 | 新建数据连接时,GreenPlum(并行装载)和Pivotal Greenplum Database数据源,合并为Pivotal Greenplum Database |
4.1.2 |
|
4.1.11.4 | 实时任务支持写入 Greenplum |
4.1.14.1 | 数据连接支持配置套接字超时(SocketTimeout 设置项中配置),控制数据库查询时间在一个合理范围内,避免出现无限等待的问题 |
1.2 功能简介
定时任务支持读取和写入 Greenplum 数据库。
数据管道任务中支持写入至 Greenplum 数据库。
数据服务支持 Greenplum 数据库。
实时任务支持写入 Greenplum 数据库。
2. 配置须知
2.1 管道任务
数据管道使用 GreenPlum 作为目标表时,都是用的 COPY 装载模式。
在使用并行装载数据源前,需要赋予数据连接对应用户指定权限。
1)可以赋予数据连接账号在对应数据库创建模式的权限。
2)在目标数据库先创建 fdl_temp 模式用来存放临时表,然后赋予普通用户这个模式的建表权限即可。
示例命令如下:
GRANT USAGE,CREATE ON SCHEMA fdl_temp TO trans_user ;
ALTER DEFAULT PRIVILEGES IN SCHEMA fdl_temp GRANT SELECT, INSERT, UPDATE, DELETE, REFERENCES, TRIGGER ON TABLES TO trans_user ;
GRANT USAGE,CREATE ON SCHEMA fdl_temp TO trans_user ;
2.2 定时任务
若用户需要使用 GreenPlum 作为写入端数据源时,支持三种装载方式:并行装载、COPY装载、普通装载。三种装载方式区别参见:Greenplum数据源使用说明
2.2.1 并行装载方式赋权
使用 GreenPlum 作为目标表时,若使用并行装载模式,则需要进行权限指定。
1)gpfdist_temp 模式下的建表和已有表的读取权限。
注:若不想设置已有表的读取权限,也可以将该模式下 ext_gpload_* 和 staging_gpload_* 表删除,需要先将使用并行装载的任务关停,移除后只需要有 gpfdist_temp 模式下建表权限即可。
GRANT USAGE,CREATE ON SCHEMA gpfdist_temp TO trans_user ;
2)建立外部表的权限。
alter role trans_user with createexttable;
3)目标表的读取权限,如果要自动建表的话还需要对应库的建表权限。
ALTER DEFAULT PRIVILEGES IN SCHEMA gpfdist_temp GRANT SELECT, INSERT, UPDATE, DELETE, REFERENCES, TRIGGER ON TABLES TO trans_user ;
2.2.2 COPY 装载方式赋权
详情参见本文 2.1 节。
2.3 数据服务
数据服务支持 Greenplum 数据库,但需要配置「并行装载设置」项。数据服务请参见:数据服务概述
3. 配置并行装载设置
使用场景:请仔细查看本文第二章内容。
3.1 前提条件
3.1.1 确认数据库版本
Greenplum(并行装载)支持的版本为:5.X 和 6.X 。
3.1.2 确认数据库数据类型
并行装载方式不可同步二进制类型字段,如果选择了此类字段进行装载,则在装载时报错(直接抛出数据库装载时报错),二进制字段只能通过 JDBC 方式进行装载,也就是使用本文第三章中的数据连接。
3.1.3 放置 gpfdist 文件
gpfdist 文件相关操作及存放位置说明如下表所示:
FDL 工程 | 操作 | gpfdist 文件位置 |
---|---|---|
1)4.0.14 之前版本 2)用户的工程是从 4.0.14 之前版本升级到 4.0.21 之前版本 | 参考本节内容 | %FineDataLink%\webapps\webroot\WEB-INF |
用户的工程是从 4.0.14 之前版本升级到 4.0.21 及之后版本 | %FineDataLink%\webapps\webroot\WEB-INF\assist | |
用户使用 4.0.14 及之后版本的安装包部署工程 | 驱动已内置;忽略本节内容 |
Linux 系统:
Linux系统:gpfdist_linux.tar.gz
1)下载该压缩包后,直接将该压缩包上传到 Linux 服务器上,然后解压到:%FineDataLink%\webapps\webroot\WEB-INF\assist下。
注:安装目录中不支持包含空格,否则会导致 gpload 读取不到文件。
2)将 bin 文件夹中的 gpfdist 文件与 lib 文件夹放在同一层级上,删除 bin 文件夹。
3)将 gpfdist_linux 文件夹名称修改为 gpfdist 。
最终效果如下图所示:
Windows 系统:
1)获取安装包。
在%FineDataLink%\webapps\webroot\WEB-INF\assist下面建一个 gpfdist 文件夹,将获取的包编辑成 exe 后放到文件夹内。
2)检查数据库所在服务器是否能访问到 FDL 工程服务器的 15500 端口,原因为:FDL 生成了 csv 文件,数据库直接读取 csv 文件来装载。
3)检查创建数据连接的账号权限已经拥有建立模式和建表的权限。
注:Windows 下 gpfdist 需要基于源码再自行编译 gpfdist.exe 才能使用(Linux 已编译)。在 Win 版本中,暂不随集成 gpfdist 相关组件,Linux 版本集成。
注2:最大单行数据大小支持 1M(Win最大支持值),不允许修改。
3.2 建立数据连接步骤
3.2.1 前提条件
详情请参见:前提条件
3.2.2 上传驱动
下载驱动包,并将其上传至 FineDataLink 中,如何上传详情可参见:驱动管理
驱动包下载 |
---|
PostgreSQL驱动,请下载最新版 |
3.2.3 配置数据连接
1)管理员登录 FDL 工程,点击「管理系统>数据连接>数据连接管理」,选中某个文件夹后,新建数据连接。如下图所示:
注:4.0.29 之前版本,数据连接选择 GreenPlum(并行装载) 。
2)设置数据连接名称(可同时修改数据连接所在目录)。如下图所示:
3)可根据数据源分类、支持形式、适配模块、数据源名称筛选数据库。如下图所示:
4)输入连接信息。驱动选择「自定义」,并勾选 3.2.2 节上传的驱动。
模式需要连接数据库后才可以选择,所以需要先点击「点击连接数据库」后,再选择「模式」。如下图所示:
若需要向 Greenplum 数据库写入数据,需要配置「并行装载设置」项。如下图所示:
配置项 | 说明 |
---|---|
服务器地址-节点1 | 输入 2.1.3 节 gpfdist 服务地址,要求配置 FDL 所在服务器上能被 SEG 访问到的 IP 当数据平台所在环境为集群环境时,展示多个配置项,配置项均为可输入下拉框,配置名为:服务器地址-节点X |
复用临时表 | 是否复用临时表(复用临时表在高频装载时,可有效降低系统表膨胀速度) 勾选后,实际运行时,将自动尝试新建「gpfdist_temp」模式并使用 |
临时文件条数限制 | 默认值:100000;范围:10000~100000000;必填 落盘的临时文件条数;配置值可根据用户环境的磁盘大小、网络速率调整 |
临时文件大小限制(MB) | 默认值:1024;范围:10~102400;必填 落盘的文件大小限制;满足条数与文件大小任一限制时,停止数据文件写入操作,立即进行文件装载 |
该设置项应用场景:
在网络发生抖动时,可能会出现管道&定时任务发出查询后,无限等待返回数据的问题,用户运维时,看不到报错,但实际任务已不再同步数据。
配置该设置项后,将控制查询在一个合理的范围内,达到套接字超时时间后,SQL 语句会自动中断报错,避免出现无限等待的问题。
值说明:
配置当前数据连接的套接字超时,单位为秒,默认值为 3600。
输入框要求为非负整数,配置为 0 时,视为不设置超时。
该设置项控制的功能范围:
定时任务:对应数据源读写、SQL脚本执行、参数赋值、全局赋值参数。
管道任务:对应数据源读写。
数据发布:对应数据源查询。
库表管理:SQL执行。
5)点击「测试连接」,连接成功即可保存。
4. 不配置并行装载设置
使用场景:请仔细查看本文第二章内容。
4.1 数据库版本
5.X 和 6.X 。
4.2 建立数据连接步骤
与本文 3.2 节不同的是,无需配置「并行装载设置」项。
5. 使用数据源
数据源在 FineDataLink 中的使用说明,详情请参见:Greenplum数据源使用说明
定时任务支持读取和写入 Greenplum 数据库。定时任务开发请参见:定时任务概述
数据管道任务中支持写入至 Greenplum 数据库。管道任务配置请参见:数据管道概述
数据服务支持 Greenplum 数据库,但需要配置「并行装载设置」项。数据服务请参见:数据服务概述
实时任务中支持写入至 Greenplum 数据库,详情参见:实时任务概述