1. 概述
1.1 版本
| FineDataLink 版本 | 功能变动 | 
|---|---|
| 4.0.21 | 
 | 
| 4.1.3 | 增加 fetchsize 参数配置 | 
| 4.1.5.1 | 新增设置项:空闲连接强制回收阈值、空闲连接可用性定期检查时间阈值 | 
| 4.1.12.3 | 
 | 
| 4.2.4.2 | 新建数据连接选择数据源类型时,基于当前工程环境,控制展示的数据源类型 | 
| 4.2.6.2 | 1)数据连接管理处,点击某个文件夹时,表格中: 
 2)数据连接管理处,数据连接目录树支持收起 3)数据连接编辑页面退出后,页面不进行刷新,若有人从其他入口进入数据连接编辑页面,会有编辑冲突提示 | 
| 4.2.6.4 | 新增「引用关系」功能,支持查看数据连接和资源的引用关系 | 
1.2 应用场景
FineDataLink 的数据开发、数据管道、数据服务、数据管理模块支持连接多种数据源进行数据的处理操作。
在使用 FineDataLink 处理、同步数据前,您需要先定义数据连接,以便在执行数据处理操作时,通过「数据库>数据连接名称>数据表」,来确定数据的读取和写入位置。
1.3 功能简介
本文讲解如何在 FDL 中配置数据连接和管理数据连接。
2. 新建数据连接
2.1 前提条件
详情请参见:前提条件
2.2 步骤说明
1)管理员进入 FDL 工程,点击「管理系统>数据连接管理」页面。点击「新建>文件夹」,可以使用文件夹对数据连接进行分类管理。如下图所示:
注:文件夹名称不可为空,不可重名,不能超过 60 个字符;只可创建一级文件夹。

在某文件夹中新建数据连接。如下图所示:

2)输入数据连接名称后,选择数据库类型,点击「下一步」按钮。
可通过搜索数据库名称来快速选择数据库类型;也可通过数据源分类、支持形式、适配模块来筛选数据库类型。
注1:所有文件夹下的数据连接名称,均不能重名。
注2:4.2.4.2 及之后版本,可选择的数据源类型由当前工程环境控制。

鼠标悬浮在数据名称右侧的问号标识上,可显示该数据源适配的模块。如下图所示:
注:4.2.4.2 及之后版本,问号标识处显示的内容由当前工程环境控制。

3)输入数据库的相关信息。如下图所示:

以下为数据连接信息的详细解释,不同数据库要设置的连接信息不同。
每个数据库的数据连接设置项请在 FDL 帮助文档中搜索查看(示例:配置Oracle数据源)。
| 配置 | 介绍 | 
|---|---|
| 数据连接名称 | 给这个数据连接一个名称,按用户自己的习惯起名即可 | 
| 驱动 | 连接数据库所需要的驱动: 
 | 
| 数据库名称 | 输入要连接的数据库的名字 | 
| 主机 | 输入数据库所在主机(或服务器)的 IP | 
| 端口 | 输入数据库所在主机(或服务器)的端口 | 
| 认证方式 | 若数据库支持多种认证方式,则点击会出现认证方式下拉框: 
 | 
| 编码 | 推荐使用默认 | 
| 模式 | 
 注:需要正确选择数据库对应的模式,否则会导致添加数据库表时显示「当前数据连接中无可用表」,只能通过 SQL 数据集进行取数 | 
| 数据连接URL | 自动生成的 URL ,无需特意配置 | 
点击「测试连接」,即可测试是否可以连接成功。

若用户不需要设置连接池,即可点击「保存」。完成数据连接配置。
2.3 连接池设置
在连接数据库时,可能需要进行一些高级设置,但大部分情况下是不需要设置的。
我们可以根据需要选择性设置,如下图所示:

2.3.1 高级设置
| 名称 | druid学名 | 默认值 | 含义 | 
|---|---|---|---|
| 最大活动连接数 | maxActive | 50 | 连接池在同一时间能够分配的最大活动连接的数量 | 
| 校验语句 | validationQuery | 默认语句 | 用来检测连接是否有效的 SQL 语句,要求是一个查询语句,常用select 'x' 。用户可自定义该语句。 | 
| 获取连接前检验 | testOnBorrow | 是 | 申请连接时执行 validationQuery 检测连接是否有效 | 
| 最大等待时间 | maxWait | 10000 | 获取连接时最大等待时间,单位毫秒 注:值设置为 0 不代表永不超时,根据实际情况设置值的大小 | 
2.3.2 更多设置(不常用,如无特殊场景不建议修改)
| 名称 | druid学名 | 默认值 | 含义 | 
|---|---|---|---|
| 初始化连接数 | initialSize | 0 | 初始化时建立物理连接的个数 | 
| 最小空闲连接数 | minIdle | 0 | 连接池最小连接数量 | 
| 归还连接前校验 | testOnReturn | 否 | 归还连接时执行validationQuery检测连接是否有效 | 
| 开启空闲回收器校验 | testWhileIdle | 否 | 指明连接是否被空闲连接回收器(如果有)进行检验,如果检测失败,则连接将被从池中去除 | 
| 空闲连接回收器休眠时间 | timeBetweenEvictionRunsMillis | -1 | 在空闲连接回收器线程运行期间休眠的时间值,以毫秒为单位 | 
| 空闲连接回收检查数 | numTestPerEvictionRun | 3 | 在每次空闲连接回收器线程(如果有)运行时检查的连接数量 | 
| 保持空闲最小时间值 | minEvictableIdleTimeMillis | 1800s | 连接保持空闲而不被驱逐的最小时间 某数据连接空闲时间若超过保持空闲最小时间值,检查 | 
| 空闲连接强制回收阈值 | maxEvictableIdleTimeMillis | 25200s 也就是7小时 | 若数据连接空闲时间超过该值,该数据连接将从连接池移除 | 
| 空闲连接可用性定期检查时间阈值 | keepAliveBetweenTimeMillis | 80000ms 也就是80s | 空闲连接的保持存活时间,可以确保在空闲一段时间后连接不会被意外关闭 | 
- fetchSize 设置 
fetchSize 参数是用于控制从数据库中获取数据的批处理大小的设置。较小的 fetchSize 值会减少每次数据库查询的内存消耗,但可能需要更多的数据库往返来获取完整的结果集;较大的 fetchSize 值可以减少数据库往返次数,但会增加内存使用量。可以根据你的需求通过设置 fetchSize 参数值,来优化数据库查询性能。
若参数值 ≤ 0(例如:-20)则表示不开启 fetchSize 参数。
1)Oracle、DB2、Postgre 这三种数据库必须设置 fetchSize 参数,所以若设置了≤0 的参数值,会自动分别被替换为 128、50、10000。
2)其他数据库默认情况下不开启 fetchSize 参数。

3)若为空则表明不配置此项参数。
2.3.3 SSH 设置
若用户安全性要求高,需要使用 SSH 。可以直接勾选「使用SSH通道」,输入对应信息。
注:验证方法支持密码和公钥,其中选择「公钥」需要将文件放置在 %FineDataLink%/webapps/webroot/WEB-INF/resources 下。

点击「测试连接」,若提示连接成功,点击「保存」保存该配置。
2.3.4 SSL 设置
注:暂只支持 MySQL 数据库
1)在%FineDataLink%/webapps/webroot/WEB-INF/resources/certificates 中放入 CA 证书、客户端证书以及客户端密钥,如下图所示:

2)勾选「使用SSL通道」,将文件添加进对应位置。如下图所示:

3)点击「测试连接」,若连接成功点击「保存」保存该配置。
3. 管理数据连接
3.1 单个数据连接管理
数据连接创建成功后,界面如下图所示:
注:用户创建的文件夹、数据连接,默认具备使用和管理权限。

鼠标悬浮在数据连接名称右侧,可对数据连接做编辑、重命名、复制、删除、测试连接操作。如下图所示:
注:删除数据连接前,可先查看数据连接的引用关系,确保该数据连接可以被删除,不影响其他资源

「数据连接管理」各设置项说明如下表所示:
| 设置项 | 说明 | 
|---|---|
| 测试连接 | 测试数据库配置是否成功 | 
| 编辑 | 修改数据连接配置项 | 
| 重命名 | 重命名该数据库,不可重名,不可为空 | 
| 复制 | 复制该条数据库,且数据连接名自动加 1 | 
| 删除 | 删除该数据库 | 
| 数据连接信息 | 显示数据库类型和创建者 | 
需要注意以下几点:
- 未适配的数据库类型右侧不显示图标。 
- 在管理数据连接时,数据连接的名字不能随意改动。更新到本地的表与数据库匹配依靠的是数据连接的名字,如果修改数据连接的名字,从该连接中取出的表将无法再更新。 - 如果是 SQL 数据集,也会导致没有「修改 SQL」的按钮。 
- 如果更新本地保存的表中的数据库,例如由开发环境变化到生产环境,表名与表结构均一致时,只需要修改数据连接的 URL 即可。本地保存的表依照数据连接名依然可以更新数据。 
3.2 文件夹管理数据连接
1)数据管理页面介绍
独立部署工程:
点击文件夹或根目录,可通过数据连接名称(不区分字母大小写,支持模糊搜索)、数据源类型(可多选,为表格中已有的数据源类型)、创建人(可多选,为表格中已有创建人)、测试结果(可多选,4.2.6.1 及之后版本新增)搜索数据连接。如下图所示:

表格内容介绍如下表所示:
| 列名 | 说明 | 
|---|---|
| 活动连接占比 | 当前活动连接数/最大活动连接数 1)「最大活动连接数」为连接池最大可创建的连接数,若最大连接数是 10 ,程序已申请 10 个连接,而且一直在使用,第 11 个连接申请时报错:active 10 maxActive 10 2)支持对值进行排序 3)若值为空:未测试数据连接或测试失败 | 
| 空闲连接数 | 1)当前处于空闲状态的连接, 随时会转成活动连接 活动连接数+空闲连接数=实际物理连接数 2)4.2.6.1 及之后版本,空闲连接数的值中,不再展示最大空闲连接数 3)若值为空:未测试数据连接或测试失败 | 
| 测试结果 | 4.2.6.1 及之后版本,新增该列 1)展示最近一次测试数据连接的结果 
 
 
 2)具体检测逻辑请参见本文 3.4 节内容 | 
| 编辑 | 1)A 用户已进入编辑,B 用户进行编辑/重命名/删除操作,B 用户将收到提示:该连接正在被XX用户编辑,请稍后再试 2)未连接 WebSocket 时,无法检查编辑是否冲突 3)4.2.6.1 及之后版本,数据连接编辑页面退出后,页面不进行刷新,若有人从其他入口进入数据连接编辑页面,会有编辑冲突提示 | 
| 其他 | 4.2.6.1 及之后版本,数据连接目录树支持收起 
 | 
集群工程:
数据管理页面如下图所示:

点击连接池信息中的「详情」按钮,展示「活动连接占比」和「空闲连接数」。如下图所示:

设置项说明与独立部署工程相同。
2)可对文件夹进行重命名、删除操作。如下图所示:
文件夹下存在数据连接时,不支持删除该文件夹。

3)可将数据连接从 A 文件夹中拖拽到 B 文件夹中;文件夹不支持拖拽到另外一个文件夹中,最多支持一层文件夹。
3.3 数据连接超时检测
在「数据连接管理>全局设置」中,提供「数据连接超时检测」功能,支持用户自定义数据连接的超时时间。
数据连接超时时,报错「31300010 kdc服务器不连通」,可手动调大超时时间。

3.4 测试连接检查项说明
| 分类 | 说明 | |
|---|---|---|
| JDBC | 针对共用配置做JDBC驱动有效性&连通性&认证测试 | 使用主机、端口、数据库构建JDBC URL,使用所配置的用户名和密码,尝试连接目标数据库 不论在哪个位置点击「测试连接」按钮,都要检查这些设置项 若检查失败,数据连接测试结果为失败 | 
| 针对各业务模块自定义配置做测试 | 目前FDL使用的自定义配置有 : 
 检查逻辑: 
 检查结果: 
 | |
| HTTPAPI、客户端 举例:简道云、SSH、SAP、SFTP、服务器本地目录、Kafka、ES、公共数据源等 | - | 使用配置中的连接信息和认证信息,尝试连接目标数据库或平台 | 
4. 引用关系
应用场景:
因业务需求调整,导致数据库发生变更,用户需要同步修改任务中使用的数据连接,但是不清楚每个数据连接被多少任务用到,不方便调整。
4.2.6.4 及之后版本,对有权限的数据连接,支持用户查看数据连接和资源的引用关系。
4.1 功能说明
1)选择某一数据连接,点击「引用关系」。如下图所示:

所有数据连接列表中增加「引用关系」字段,展示使用该数据连接的任务数。如下图所示:

2)在弹窗中,以列表的形式展示该数据连接所有的引用资源,可筛选展示自己有权限的资源。如下图所示:

3)展示的模块包含定时任务、数据管道、数据服务API、全局参数;
引用资源为定时任务时,支持展开查看节点和算子,也支持点击跳转到对应的资源查看。
注 1:引用资源为定时任务时,不展示禁用节点;
注 2:若资源中所使用的数据连接更换名称,但任务配置中没有联动变更,则无引用关系。

4.2 引用关系的更新策略
| 更新策略 | 说明 | 
|---|---|
| 全量更新 | 工程升级时初始化资源配置引用关系 | 
| 增量更新 | 1)定时任务资源 
 2)其余资源:保存、删除还原时更新 | 

 
  
  	 
         
         上一篇:定时任务数据源功能限制说明
上一篇:定时任务数据源功能限制说明 
  
             
		         
					 
					 
						 
					 
					