跳至正文

Tableau服务器增量刷新及“空提取”优化

一、在Desktop中设置增量刷新并发布数据源

1、创建自定义SQL连接

连接数据源,双击数据表或者自定义SQL。

注意,如果自定义SQL中包含多个架构,此时需要多个连接。

2、设置增量刷新及标记符

默认实时连接,改为数据提取,并同步编辑设置增量字段。

增量字段,必须是连续字段,可以是日期、日期时间、整数格式。

增量刷新不会更改历史数据,过往数据如果在数据库中有变动,增量不会刷新;因此推荐增量刷新和全量刷新结合使用——比如每天增量,每月月末全量覆盖。

关于“日期时间”方面的限制,特别是非常精准的时间,可以参考官方说明,如下:

注意:数据引擎是 Tableau 创建数据提取所使用的基础机制,存储时间值时最多精确到 3 位小数。如果为“使用列标识新行”指定日期时间或时间戳列,并且数据库使用比 Tableau 更高的精度,则在增量刷新后最终会出现重复行。举例来说,如果数据库有两个行,其中一个行的日期时间值为 2015-03-13 17:30:56.502352,另一个行的日期时间值为 2015-03-13 17:30:56.502852,则 Tableau 在存储这两个行时都将使用日期时间值 2015-03-13 17:30:56.502,从而会创建重复行。

3、切换到工作表中,发布数据源

切换到工作表后,Tableau会按照数据提取的设置,将数据库数据提取到本地;之后发布到服务器。

推荐每日增量刷新+每月全量刷新结合。

超大量的本地提取毫无意义,只会耗用本地空间和时间,因此超大数据量推荐看第二部分“空提取”。

个人推荐,在发布数据源之前,适当对字段做文件夹分组、增加逻辑字段,从而提高其他人员使用该数据源的一致性。

4、成功发布,可以编辑刷新计划

发布成功后,可以在浏览器中编辑刷新计划。推荐同步创建一个测试用的仪表板,验证数据行数和关键度量值。

二、大数据量时,建议设置“空提取”(推荐)

如果数据量超过100万,推荐使用“空提取”,确保本地提取0行,发布数据源0行,避免本地大量无效提取。

但务必注意参数的设置

1、“空提取”设置之 增加参数

实现创建参数,用于控制提取的有/无。本地提取空,服务器提取有,因此本地和服务器的参数值不同,后续介绍。

2、“空提取”设置 之 增加本地提取条件

增加一个自定义计算,后续用于数据提取的提取条件。

3、在数据提取中,设置刷新条件

刷新条件中,设置“排除真”,即保留“伪”的数据行。

但由于参数默认值是“真”,因此本地提取就会是0行——故称之为“空提取”。

4、发布数据源——第一部分第3部分

如果使用了空提取,此时务必把参数改为“伪”。

把参数改为“伪”之后再发布数据源,这样可以确保服务器提取时有效。

5、在服务器中,补充“立即运行”,实现全量刷新计划

在浏览器中,查看增量刷新,由于“空提取”实际上发布了空行,因此需要在服务器中立即运行,确保全量刷新。

切记,本地的大量数据提取是没有意义的。

Feb 25, 2023 喜乐君