配置数据连接

  • 文档创建者:doreen0813
  • 编辑次数:51次
  • 最近更新:Lily.Wang 于 2020-11-09
  • 1. 概述

    配置数据连接在线视频学习请参见 数据连接 

    1.1 版本

    FineBI 版本JAR 包时间
    5.12020-1-15

    1.2 功能简介

    使用 FineBI 进行数据分析的第一步即获取数据,获取数据的第一步即定义数据来源。实际用户系统最常见的是将数据保存在数据库中,并且不断更新。无论使用 FineBI Spider 引擎的何种数据类型,都支持对数据的不断更新。

    在进行数据连接时,不支持数据库中表名字段名包含下表所示的特殊字符:

    表名和字段名不支持包含下面字符 
    JOJO___NULL____EMPTY__##__order__partition##RF#JO
    .[]{}()=/_
    RE_MTRE+自然数RE-MT_MT

    2. 创建数据连接

    2.1 管理系统节点中创建

    使用拥有 FineBI 数据连接权限的用户账号登录数据决策系统(一般为管理员),点击「管理系统>数据连接>数据连接管理>新建数据连接」可创建新的数据连接,如下图所示:

    12.png

    注:如果非管理员用户需要配置 FineBI 数据连接,需要管理员给其分配管理系统下「数据连接」节点的权限,具体操作请查看 数据连接控制 

    2.2 使用创建按钮创建

    注:这种方法适用于 2020-08-04 之前的 JAR 。

    在数据决策系统左下角直接点击「创建>新建数据连接」,快速进入数据连接创建页面,如下图所示:

    1586741894855371.png

    3. 选择数据库类型

    点击「新建数据连接」按钮,有三种类型选择,分别为常用所有其他。如下图所示:

    3.png

    2.1 常用

    固定显示几个常用的数据库类型,分别为 Hsql、IBM DB2、Microsoft SQL Server、MySQL、Oracle。如下图所示:

    3.png

    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,以及安装插件支持的数据库类型,如下图所示:

    4.png

    注:可通过「内置支持」和「插件支持」的勾选,对数据库类型进行筛选;若都不勾选,则显示空白。

    2.3 其他

    「其他」类型中包括「JNDI数据连接」和「其他JDBC」。如下图所示:

    6.png

    2.3.1 JNDI 数据连接

    点击新建数据连接按钮,在「其他」类型中选择「JNDI数据连接」,如下图所示:

    注:JNDI 数据连接仅支持 Finereport ,FineBI 暂不支持数据准备处使用。

    12.png

    2.3.2 其他 JDBC

    如果数据库列表中没有所需的数据库类型,则选择「其他」类型下的其他JDBC,将对应驱动包放置在%FineBI%\webapps\webroot\WEB-INF\lib下,并重启 FineBI,需要手动输入驱动器名称、URL 等完整数据连接信息,点击「测试连接」连接成功后,点击「保存」即可。如下图所示:

    10.png

    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 这些数据库时,会比其他数据连接多了一步:模式,如下图所示:

    1602655951855142.png

    模式介绍如下所示:

    • 如果这些数据库未进行模式选择,则默认选择的是第一个模式。

    • 当数据库不存在模式选择,则无需进行模式选择。

    • 模式默认不可编辑,点击「点击连接数据库」且连接成功后可编辑。

    如果不正确选择数据库对应的模式,会导致添加数据库表时显示「当前数据连接中无可用表」,只能通过 SQL 数据集进行取数。

    4.2 认证方式

    其中 APACHE IMPALA、Hadoop Hive、SPARK  、TRANSWARP INCEPTOR、APACHE Phoenix、HBase 这六个数据库在配置数据连接时有 认证方式这一选项。如下图所示:

    1602660471955557.png

    具体介绍如下所示:

    • 若数据库支持多种认证方式,则点击会出现认证方式下拉框。

    • 若选择「Kerberos」认证,则填入注册过 kdc 的客户端名称和 keytab 密钥路径。

    • 详细 Kerberos 认证请参考 数据连接 Kerberos 认证

    4.3 高级设置

    高级设置界面如下图所示:

    1602656589146686.png

    其中连接池属性的各参数说明如下表所示:

    名称  举例  含义  
    初始化连接数initialSize="1"连接池启动时创建的初始化连接数量
    最大活动连接数maxActive="200"连接池在同一时间能够分配的最大活动连接的数量,如果设置为非正数则表示不限制
    最大空闲连接数maxIdle="100"

    连接池中容许保持空闲状态的最大连接数量,超过的空闲连接将被释放,如果设置为负数表示不限制

    注:第三方框架已经废弃该参数,设置无效果

    最小空闲连接数minIdle="2"连接池中容许保持空闲状态的最小连接数量,低于这个数量将创建新的连接,如果设置为 0 则不创建
    最大等待时间(毫秒)maxWait="1000"当没有可用连接时,连接池等待连接被归还的最大时间(以毫秒计数),超过时间则抛出异常,如果设置为 -1 表示无限等待
    SQL 验证查询validationQuery="SQL语句"用来验证从连接池取出的连接,在将连接返回给调用者之前如果指定,则查询必须是一个 SQL SELECT 并且必须返回至少一行记录
    获取连接前检验testOnBorrow="false"

    指明是否在从池中取出连接前进行检验,如果检验失败,则从池中去除连接并尝试取出另一个

    归还连接前检验testOnReturn="true"

    指明是否在归还到池中前进行检验

    开启空闲回收器检验testWhileIdle="true"

    指明连接是否被空闲连接回收器(如果有)进行检验,如果检测失败,则连接将被从池中去除

    空闲连接回收器休眠时间(毫秒)

    timeBetweenEvictionRunsMilli

    s="1000"

    在空闲连接回收器线程运行期间休眠的时间值,以毫秒为单位.。如果设置为非正数,则不运行空闲连接回收器线程
    空闲连接回收检查数numTestsPerEvictionRun="2"在每次空闲连接回收器线程(如果有)运行时检查的连接数量
    保持空闲最小时间

    minEvictableIdleTimeMilli

    s="18005000"

    连接在池中保持空闲而不被空闲连接回收器线程(如果有)回收的最小时间值

    5. 管理数据连接

    5.1 管理范围

    在数据决策系统中,点击「管理系统>数据连接>数据连接管理」,点击某一数据库右侧图标,如下图所示:

    13.png

    「数据连接管理」各设置项说明如下表所示:

    设置项说明
    测试连接测试数据库配置是否成功
    编辑修改数据连接配置项
    重命名重命名该数据库
    复制复制该条数据库,且数据连接名自动加 1 
    删除删除该数据库
    数据连接信息显示数据库类型和创建者

    需要注意以下几点:

    • 未适配的数据库类型右侧不显示1572937479544823.png图标。

    • 在管理数据连接时,数据连接的名字不能随意改动。更新到本地的表与数据库匹配依靠的是数据连接的名字,如果修改数据连接的名字,从该连接中取出的表将无法再更新。  

    • 如果更新本地保存的表中的数据库,例如由开发环境变化到生产环境,表名与表结构均一致时,只需要修改数据连接的 URL 即可。本地保存的表依照数据连接名依然可以更新数据。

    5.2 连接池状态

    数据连接界面提供连接池状态页面,可看到目前已创建的数据连接及对应的连接状态,如下图所示:

    14.png

    「活动连接数」和「空闲连接数」的说明如下表所示:

    连接池状态说明
    活动连接数

    连接池最大可创建的连接数,若最大连接数是 10 ,程序已申请 10 个连接,而且一直在使用,第 11 个连接申请时报错:active 10 maxActive 10

    空闲连接数

    当前处于空闲状态的连接, 随时会转成活动连接, 空闲状态超过最大空闲连接时间时自动释放

    活动连接数+空闲连接数=实际物理连接数

    6. 常见报错

    6.1 数据无法预览

    问题描述:

    BI 连接服务器数据集,数据预览时有报错信息:find fieldinfo failed for table:XXX

    原因分析:

    数据库表中有重复的字段名,BI 是不支持重复字段名及空值的,如下图所示:

    Snag_1145082.png

    解决方案:

    重新修改重复的字段名。

    附件列表


    主题: 连接到数据
    • 有帮助
    • 没帮助
    • 只是浏览
    • 评价文档,奖励 1 ~ 100 随机 F 豆!