1. 概述编辑
配置数据连接在线视频学习请参见 数据连接
1.1 版本
FineBI 版本 | 功能变动 |
5.1 | - |
5.1.20 | 4.3 高级设置布局优化 |
1.2 功能简介
使用 FineBI 进行数据分析的第一步即获取数据,获取数据的第一步即定义数据来源。实际用户系统最常见的是将数据保存在数据库中,并且不断更新。无论使用 FineBI Spider 引擎的何种数据类型,都支持对数据的不断更新。
在进行数据连接时,不支持数据库中表名和字段名包含下表所示的特殊字符:
表名和字段名不支持包含下面字符 | ||||||||
---|---|---|---|---|---|---|---|---|
JO | JO_ | __NULL__ | __EMPTY__ | ## | __order | __partition | ##RF# | JO |
. | [ | ] | {} | ( | ) | = | / | _ |
RE_ | MT | RE+自然数 | RE | - | MT_ | MT |
2. 创建数据连接编辑
使用拥有 FineBI 数据连接权限的用户账号登录数据决策系统(一般为管理员),点击「管理系统>数据连接>数据连接管理>新建数据连接」可创建新的数据连接,如下图所示:
注:如果非管理员用户需要配置 FineBI 数据连接,需要管理员给其分配管理系统下「数据连接」节点的权限,具体操作请查看 数据连接控制
3. 选择数据库类型编辑
点击「新建数据连接」按钮,有三种类型选择,分别为常用、所有、其他。如下图所示:
2.1 常用
固定显示几个常用的数据库类型,分别为 Hsql、IBM DB2、Microsoft SQL Server、MySQL、Oracle。如下图所示:
2.2 所有
显示 FineBI 内置支持和插件支持的数据库类型,分别为:阿里云AnalyticDB、Amazon Redshift、Apache Impala、Apache KYLIN、Apache Phoenix、DERBY、GBase 8A、GBase 8S、GBase 8T、H2、华为云DWS、Fusioninsight elk、Fusioninsight HD、GaussDB 200、Hadoop Hive、HBase、HP Vertica、HSQL、IBM DB2、INFORMIX、KINGBASE、Microsoft SQL Server、MySQL、Oracle、Pivotal Greenplum Database、Postgresql、Presto、SAP HANA、SAP Sybase、SPARK、Sqlite、TeraData、TRANSWARP INCEPTOR,以及安装插件支持的数据库类型,如下图所示:
注:可通过「内置支持」和「插件支持」的勾选,对数据库类型进行筛选;若都不勾选,则显示空白。
2.3 其他
「其他」类型中包括「JNDI数据连接」和「其他JDBC」。如下图所示:
2.3.1 JNDI 数据连接
点击新建数据连接按钮,在「其他」类型中选择「JNDI数据连接」,如下图所示:
注:JNDI 数据连接仅支持 Finereport ,FineBI 暂不支持数据准备处使用。
2.3.2 其他 JDBC
如果数据库列表中没有所需的数据库类型,则选择「其他」类型下的其他JDBC,将对应驱动包放置在%FineBI%\webapps\webroot\WEB-INF\lib下,并重启 FineBI,需要手动输入驱动器名称、URL 等完整数据连接信息,点击「测试连接」连接成功后,点击「保存」即可。如下图所示:
4. 配置信息介绍编辑
以下为部分数据连接信息的详细解释:
连接信息 | 说明 |
---|---|
数据连接名称 | 新建数据的名称,用于系统中区分不同数据库的连接 |
驱动 | 用于数据连接的驱动程序,根据自身数据库类型,填入对应连接页面提供的信息 |
URL | 数据连接的 URL 包含数据库名称、IP 、端口等信息,对应数据连接页面提供了 URL 示例,根据自身数据库的信息修改填入即可,例如 MySQL 的 URL 为:jdbc:mysql://ip:port/dbname 若自身数据库 IP 为120.27.40.246,端口为3306,数据库名称为 mysql ,则填入的 URL 为 jdbc:mysql://120.27.40.246:3306/mysql |
编码 | 默认直接使用自动即可,如果出现添加数据库表、sql数据集或者服务器数据集乱码可以修改当前数据连接对应的的编码。 注:2019-01-07 及之后的 FineBI 版本开始支持 |
用户名 | 对应连接目的数据库的用户名 |
密码 | 对应连接目的数据库的密码 |
不同数据库需配置的信息可能有所不同,下面介绍「模式」和「认证方式」这两个属性的具体信息。
4.1 模式
在连接 Amazon Redshift 、Apache KYLIN、Apache Phoenix、DEBRY、HP Vertica、IBM DB2、INFORMIX、Microsoft SQL Server、Oracle、Pivotal Greenplum Database、Postgresql、GBase 8S、GBase 8T、KINGBASE、Presto、SAP HANA、SAP Sybase、Hbase 这些数据库时,会比其他数据连接多了一步:模式,如下图所示:
模式介绍如下所示:
如果这些数据库未进行模式选择,则默认选择的是第一个模式。
有些数据库不需要选择模式,也没有模式选择的按钮,则无需进行模式选择。
模式默认不可编辑,点击「点击连接数据库」且连接成功后可编辑。
有模式选择的数据库,需要用户的数据库中有可用的模式,否则会报错。
需要正确选择数据库对应的模式,否则会导致添加数据库表时显示「当前数据连接中无可用表」,只能通过 SQL 数据集进行取数。
4.2 认证方式
其中 APACHE IMPALA、Hadoop Hive、SPARK 、TRANSWARP INCEPTOR、APACHE Phoenix、HBase 这六个数据库在配置数据连接时有 认证方式这一选项。如下图所示:
具体介绍如下所示:
若数据库支持多种认证方式,则点击会出现认证方式下拉框。
若选择「Kerberos」认证,则填入注册过 kdc 的客户端名称和 keytab 密钥路径。
详细 Kerberos 认证请参考 数据连接 Kerberos 认证
4.3 高级设置
高级设置界面如下图所示:
其中连接池属性的各参数说明如下表所示:
常用连接池属性
名称 | druid学名 | 默认值 | 含义 |
---|---|---|---|
最大活动连接数 | maxActive | 50 | 连接池在同一时间能够分配的最大活动连接的数量 |
校验语句 | validationQuery | 默认语句 | 用来检测连接是否有效的 SQL 语句,要求是一个查询语句,常用select 'x' 。用户可自定义该语句。 |
获取连接前检验 | testOnBorrow | 是 | 申请连接时执行 validationQuery 检测连接是否有效 |
最大等待时间 | maxWait | 10000 | 获取连接时最大等待时间,单位毫秒 |
不太常用的连接池属性(如无特殊场景不建议修改)
名称 | druid学名 | 默认值 | 含义 |
---|---|---|---|
初始化连接数 | initialSize | 0 | 初始化时建立物理连接的个数 |
最小空闲连接数 | minIdle | 0 | 连接池最小连接数量 |
归还连接前校验 | testOnReturn | 否 | 归还连接时执行validationQuery检测连接是否有效 |
开启空闲回收器校验 | testWhileIdle | 否 | 指明连接是否被空闲连接回收器(如果有)进行检验,如果检测失败,则连接将被从池中去除 |
空闲连接回收器休眠时间 | timeBetweenEvictionRunsMillis | -1 | 在空闲连接回收器线程运行期间休眠的时间值,以毫秒为单位 |
空闲连接回收检查数 | numTestPerEvictionRun | 3 | 在每次空闲连接回收器线程(如果有)运行时检查的连接数量 |
保持空闲最小时间值 | minEvictableIdleTimeMillis | 1800s | 连接保持空闲而不被驱逐的最小时间 |
5. 管理数据连接编辑
5.1 管理范围
在数据决策系统中,点击「管理系统>数据连接>数据连接管理」,点击某一数据库右侧图标,如下图所示:
「数据连接管理」各设置项说明如下表所示:
设置项 | 说明 |
---|---|
测试连接 | 测试数据库配置是否成功 |
编辑 | 修改数据连接配置项 |
重命名 | 重命名该数据库 |
复制 | 复制该条数据库,且数据连接名自动加 1 |
删除 | 删除该数据库 |
数据连接信息 | 显示数据库类型和创建者 |
需要注意以下几点:
未适配的数据库类型右侧不显示图标。
在管理数据连接时,数据连接的名字不能随意改动。更新到本地的表与数据库匹配依靠的是数据连接的名字,如果修改数据连接的名字,从该连接中取出的表将无法再更新。
如果是 SQL 数据集,也会导致没有「修改 SQL」的按钮。
如果更新本地保存的表中的数据库,例如由开发环境变化到生产环境,表名与表结构均一致时,只需要修改数据连接的 URL 即可。本地保存的表依照数据连接名依然可以更新数据。
5.2 连接池状态
数据连接界面提供连接池状态页面,可看到目前已创建的数据连接及对应的连接状态,如下图所示:
「活动连接数」和「空闲连接数」的说明如下表所示:
连接池状态 | 说明 |
---|---|
活动连接数 | 连接池最大可创建的连接数,若最大连接数是 10 ,程序已申请 10 个连接,而且一直在使用,第 11 个连接申请时报错:active 10 maxActive 10 |
空闲连接数 | 当前处于空闲状态的连接, 随时会转成活动连接, 空闲状态超过最大空闲连接时间时自动释放 活动连接数+空闲连接数=实际物理连接数 |
6. 常见报错编辑
6.1 数据无法预览
BI 连接服务器数据集,数据预览时有报错信息:find fieldinfo failed for table:XXX
这是因为数据库表中有重复的字段名,BI 是不支持重复字段名及空值的,如下图所示。我们需要重新修改重复的字段名。
6.2 无法新增数据连接
用户新增数据连接失败,并报错“当前数据连接数量已达到注册lic限制(0个),无法新增”,如下图所示:
方案一:关闭 IE 浏览器兼容性视图。
方案二:若要在 IE 浏览器兼容性视图下进行数据决策系统的「管理系统」配置,需要手动调高 IE 内核版本才可以支持使用,操作步骤如下所示:
1)IE 浏览器打开数据决策系统页面,点击页面右上角「工具>F12 开发人员工具」,如下图所示:
2)以 IE10 浏览器为例,手动调高 IE 内核版本。如下图所示: