通过 JDBC 与 Tableau 对接¶
数据联邦服务支持在 Tableau 中调用 JDBC 接口,读取数据源中的数据。本章节介绍如何通过 JDBC 与 Tableau 对接。
前提条件¶
已安装 Tableau Desktop 版本(建议安装2020.1及以上版本)
已创建数据联邦通道并授权应用
配置步骤¶
将数据联邦 JDBC 驱动 jar 包从 maven 仓库下载到本地。maven 依赖如下:
<groupId>com.envisioniot</groupId> <artifactId>enos-datafederation-jdbc</artifactId> <version>0.0.1</version>
将数据联邦 JDBC 驱动 jar 包复制到 Tableau 安装路径的
Drivers
目录下,各操作系统的路径一般为:Windows:C:\Program Files\Tableau\Drivers Mac:~/Library/Tableau/Drivers Linux: /opt/tableau/tableau_driver/jdbc
更多信息,参见 Tableau帮助文档。
启动 Tableau,在 连接 页面中,点击 其他数据库(JDBC)。
完成数据源连接的以下配置:
用户名:输入已授权应用的 Access Key。
密码:输入已授权应用的 Secret Key。有关获取应用 Access Key 和 Secret Key 的步骤,参见 注册和管理应用。
URL:输入数据联邦通道的JDBC URL(从 联邦通道管理 页面,在对应读通道的 操作 列中,选择 … > 获取地址,复制通道的 JDBC URL),并在复制的 JDBC URL后加上
dbEscapeNeeded=false
参数。例如jdbc:datafederation://{domain_name}/data-federation/v2.0/channels/read/{channel_id}?orgId={orgId}&dbEscapeNeeded=false
。
点击 登录,连接数据源,完成数据查询。拖拽需要使用的数据表,对数据进行加载转换等处理。如下图所示:
使用自定义SQL语句,展示数据报表。参考以下示例:
select a.user_id, a.sex, a.age, a.province, b.invest_date, b.loan_name, b.invest_amount from mysql196.tableau.`user` a join mysql196.tableau.`trance` b on a.user_id=b.user_id