知识库

Tableau Server 视图中的数据已过时


发布时间: 11 Apr 2013
上次修改日期: 15 Jul 2019

问题

Tableau Server 视图中显示的数据不是最新数据。

环境

Tableau Server

解决方案

TSM 之前的 Tableau Server 版本(2018.1.x 及更低版本)

为所有视图显示最新数据

若要显示所有 Tableau Server 视图的最新数据,请将缓存设置更改为“均衡”“刷新频率高于”
  1. 在运行 Tableau Server 的计算机上,导航到以下位置以停止服务器:
    • Windows“开始”菜单上的“所有程序”>“Tableau Server x.x”>“停止 Tableau Server”
  2. 在 Windows 的“开始”菜单上选择“配置 Tableau Server”
  3. 如果使用 Active Directory 帐户作为服务器的“用户运行身份”帐户,请在“常规”选项卡上输入其密码。
  4. 在“数据连接”选项卡上,选择“均衡”“刷新频率高于”
  5. 单击“确定”
  6. 通过选择以下选项来启动服务器:
    • Windows“开始”菜单上的“所有程序”>“Tableau Server x.x”>“启动 Tableau Server”

Tableau Server 的 TSM 版本(2018.2 及更高版本)

为所有视图显示最新数据

  1. 运行此命令:

    tsm data-access caching set -r <value>

    其中 <value> 是以下选项之一:

    • low 或空字符串 ("")。这是默认值,并指明 Tableau Server 应配置缓存,且始终在可用时使用缓存的数据。
    • value。其中“<value>”指定应缓存的最长时间数据(以分钟为单位)。
    • always 0 (zero)。这些值指明 Tableau Server 应始终获取最新数据,并且在每次重新加载页面时应刷新缓存。

2. 使用 tsm pending-changes apply 命令应用更改。这将重新启动 Tableau Server。

Tableau Server 的所有版本

为特定视图显示最新数据

若要显示特定视图上的最新数据,请使用以下选项之一:

  • 打开视图,然后单击“刷新数据”。有关详细信息,请参见 Tableau 帮助中的刷新数据
  • ?:refresh=y 附加到视图的 URL。例如:http://servername/views/workbookname/dashboard1?:refresh=y 

原因

如果缓存设置为“刷新频率低于”,则此行为是预期行为。 下面进一步解释了此问题的可能原因:
  • 当发布到 Tableau Server 的视图具有与数据库的实时连接时,所查询的数据存储在缓存中。随后的访问将从此缓存中取出数据(如果有数据)。此外,通过数据提取与视图的交互将导致 VizQL 会话放入缓存。重新打开视图有可能会从 VizQL 缓存中取出视图的较旧版本。
  • 当发布到 Tableau Server 的视图连接到数据提取时,与视图的交互将导致 VizQL 会话被缓存。重新打开视图会从 VizQL 缓存中取出视图的较旧版本。
  • 选择“刷新频率低于”后,VizQL 可能会继续使用缓存最多 12 小时。
  • 每个进程都有自己存储在 RAM 中的缓存,这就是为何单击“刷新数据”不会刷新每个用户的数据的原因。不同的用户会话由不同的 VizQL 进程处理,而“刷新数据”只会移除当前进程的缓存。
  • 除了缓存视图之外,VizQL 还会缓存数据库查询结果。因此,如果一个工作簿将同一查询发送到同一数据库,VizQL 将能够重用缓存中的数据。

其他信息

在 Tableau Server 的“配置”窗口中,使用“数据连接”选项卡来配置缓存并指定要如何从数据源中处理初始 SQL 语句。


讨论本文... 反馈论坛
此文章是否已解决问题?