Tableau连接
Tableau是一款数据分析与可视化工具,支持连接本地或云端数据,无论是电子表格还是数据库数据,都可以无缝连接。本文介绍使用Tableau连接云原生数据仓库AnalyticDB PostgreSQL版。
连接Tableau
启动Tableau。
在连接页面选择Pivotal Greenplum Database。
在登录页面填写数据库连接信息后单击登录。
说明若连接失败请确认数据库连接信息是否正确,检查数据库白名单是否添加Tableau所在服务器IP地址,确认无误后重新登录。如何添加白名单,请参见设置白名单。
配置项
描述
服务器
AnalyticDB PostgreSQL外网连接地址。详情请参见管理外网地址。
端口
AnalyticDB PostgreSQL数据库的端口,默认为3432。
数据库
AnalyticDB PostgreSQL数据库名称。
用户名
AnalyticDB PostgreSQL数据库账户。
密码
AnalyticDB PostgreSQL数据库密码。
成功登录后页面如下所示。
、
统计分析
您可以根据指导操作,对任意表进行统计分析,并进行报表展示。
例如使用TPC-H数据中的lineitem,点开一张工作表即可展示任意维度的数据。
当您从度量或者维度中选择字段,放到工作表区时,Tableau都会发送一个Query到AnalyticDB PostgreSQL进行数据查询,例如上述图表发送的Query如下所示:
BEGIN;declare "SQL_CUR0x7fdabf04ca00" cursor with hold for SELECT "lineitem"."l_linestatus" AS "l_linestatus",
"lineitem"."l_shipmode" AS "l_shipmode",
SUM("lineitem"."l_orderkey") AS "sum_l_orderkey_ok",
((CAST("lineitem"."l_shipdate" AS DATE) + CAST(TRUNC((-1 * (EXTRACT(DAY FROM "lineitem"."l_shipdate") - 1))) AS INTEGER) * INTERVAL '1 DAY') + CAST(TRUNC((-1 * (EXTRACT(MONTH FROM "lineitem"."l_shipdate") - 1))) AS INTEGER) * INTERVAL '1 MONTH') AS "tyr_l_shipdate_ok"
FROM "public"."lineitem" "lineitem"
GROUP BY 1,
2,
4;fetch 10000 in "SQL_CUR0x7fdabf04ca00"
关闭Cursor
默认情况下Tableau使用Cursor模式从AnalyticDB PostgreSQL拉取数据。示例如下:
FETCH 10000 in “SQL_CUR0x7fe678049e00”
如果拉取的数据量较大,并且Tableau服务器的内存足够放下所有的查询数据,可以通过关闭Cursor模式进行性能调优。
操作步骤如下:
创建关闭Cursor模式的TDC文件,文件配置信息如下:
<?xml version='1.0' encoding='utf-8' ?> <connection-customization class='greenplum' enabled='true' version='4.3'> <vendor name='greenplum'/> <driver name='greenplum'/> <customizations> <customization name='odbc-connect-string-extras' value='UseDeclareFetch=0' /> </customizations> </connection-customization>
您也可以修改Fetch的值,让其每次Fetch更多的数据。文件配置信息如下:
<?xml version='1.0' encoding='utf-8' ?> <connection-customization class='greenplum' enabled='true' version='4.3'> <vendor name='greenplum'/> <driver name='greenplum'/> <customizations> <customization name='odbc-connect-string-extras' value='Fetch=100000' /> </customizations> </connection-customization>
使用.tdc作为后缀名,保存该文件。
将保存的TDC文件移动到Datasources目录下。
Tableau Desktop版需要移动到Documents/My Tableau Repository/Datasources下。
重启Tableau即可生效。
初始化SQL
建立连接时可以通过初始化SQL设置特定参数,如下图所示。
SQL语句结尾请不要添加英文分号(;),Tableau会将该SQL封装执行,中间如果有分号会报语法错误。同样在自定义SQL时,SQL结尾也不能加(;)。