首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何每隔一段时间自动刷新Tableau Desktop中提取的数据源

如何每隔一段时间自动刷新Tableau Desktop中提取的数据源
EN

Stack Overflow用户
提问于 2015-01-05 23:44:38
回答 2查看 13.5K关注 0票数 3

我正在使用Tableau Desktop 8.0通过从MySQL数据库中提取数据来创建可视化(.twbx文件)。但是这个数据库每周更新一次。也就是说,在每周开始时,数据库中的数据都会发生变化。因此,我是否有可能安排一个任务,在特定的时间间隔自动刷新提取的数据源(即,在我的情况下是每周),以便在每周开始时,数据源应该根据数据库中的新更新进行刷新,并且报告应该相应地反映结果。这可以通过Tableau Desktop自动安排吗?我知道在Tableau Server上很容易做到这一点。但我买不起一台服务器,所以如果Tableau Desktop版也能做到这一点,我想得到一个答案。

EN

回答 2

Stack Overflow用户

发布于 2015-01-06 21:04:03

有完全相同的问题,只是我必须每小时更新我的数据库:)

最终的解决方案是Tableau Server。虽然我没有,但我没有为这个问题找到任何“合理”的解决方案。可以使用提取数据API (花费大量精力)来更新(替换) .tde文件,但是您不能自动生成.twbx (这可能是您想要做的事情)。这至少是我需要的)。

所以我选择了一个非优雅的解决方案,使用win32应用程序接口来制作一个脚本来给出键盘命令。基本上,我打开.twb文件(如果还没有打开),把它带到前面,给出alt +D+X命令(刷新所有解压缩),按enter,等待一段时间(以秒为单位,不知道如何发现这个过程是否已经完成),再次按enter,alt +f+k(导出打包的工作簿),一些shift+tabs转到文件夹提示,输入路径,几个选项卡进入名称提示,输入名称,再次输入,瞧

这不仅是一个不优雅的解决方案,而且也是一个非常不稳定的解决方案。我在虚拟机上运行Tableau Desktop,只有当我真正登录到该机器时,我的脚本才能工作(否则它将不会运行键盘命令)。如果您的实际机器上有Tableau,那么,当您运行脚本时,您需要确保没有任何东西可以干扰它。

不是很好的解决方案,但我有最好的解决方案:

票数 4
EN

Stack Overflow用户

发布于 2016-06-02 06:21:46

一种方法是使用Python和Tableau Data Extract API来更新打包工作簿(.twbx)的数据提取。如果你不熟悉Python,值得一试,它是一种非常直观的编程语言,具有强大的库,可以从csv、excel、MySQL、SQLite、API等加载数据。它是一种用于web应用程序、数据分析、办公自动化等的优秀语言。

使用Tableau Desktop,您可以访问Python中的Tableau数据提取API。除了数据提取API之外,其中的技巧是打包的工作簿实际上是一种不同类型的zip文件。因此,一般步骤是:解压打包的工作簿>加载新数据>创建新数据提取w/ API >替换提取>压缩备份为新的打包工作簿。下面是一个带有完整代码的要点的链接。在创建一个python文件之后,您可以调度它的执行。但是,是的,服务器是调度自动刷新的最佳解决方案,以及其他一些很好的功能,尽管我知道在小范围内很难证明这是合理的。

Link to code!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27782900

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档