【问题标题】:"Saving" BigQuery Views for use in Tableau“保存”BigQuery 视图以在 Tableau 中使用
【发布时间】:2016-08-18 03:59:42
【问题描述】:

我正在尝试通过直接在 BigQuery 中创建计算视图来在 Tableau 中创建更快的仪表板。

根据我对 gcloud 文档 here 的理解,一旦访问该视图,该视图将重新执行查询,因此这有点违背我的目标。*

*我的目标是消除动态计算,无论是在 Tableau 还是 BigQuery 中。

是否可以通过预定脚本或工作流程“保存”这些视图?

谢谢,

【问题讨论】:

  • 你想要这个的理由是什么?听起来您想缓存一些东西,也许将较小的数据集写入表并在最终查询中使用它。
  • 嗨,我的目标是像你说的那样简单地预先计算和缓存数据,这样 Tableau 就不会消耗服务器资源(和时间),而只是从表/视图中获取所需的数据.
  • 视图总是会重新执行,但缓存可能会解决您的问题,如果基础表保持不变,它将不会重新运行,而是返回缓存的结果。否则将结果写入表可能是您想要的?
  • 您好,感谢您的意见。不过,我不熟悉 BigQuery 缓存。我可以在 UI 中设置吗?
  • 在此处了解 Tableau 数据提取:montage.co.nz/assets/Brochures/…

标签: view google-bigquery tableau-api


【解决方案1】:

view 最好被认为是一种重新格式化表格的方法,以使其看起来更方便进一步查询。查询仍然必须在 BigQuery 上运行,因此好处是视图对于 Tableau 来说可能比原始表更简单(如果视图使用一些复杂的 SQL 来创建它的某些列,则特别方便)。但它不会节省计算时间。

但是,如果您的视图正在对较大的表进行一些复杂的合并,那么将结果保存为新表而不是创建视图可能是值得的。如果您的基础表不经常更改,这是可以的(根据经验,如果您每天都使用结果并且表每周更改,那么这可能是值得的,如果每月更改一次,当然也是如此)。然后 Tableau 将查询预先合并的结果,而不是更大的原始表。 BigQuery 存储和处理成本低廉,因此这通常是一个合理的解决方案。

另一种方法是使用 Tableau extract 将数据引入本地驱动器或服务器。这仅在表足够小以适合本地时才实用,并且只有在适合本地内存时才能真正有效地提高速度(这可能比您想象的要多得多)。但数据提取(至少在 Tableau Server 上)可以设置为按计划刷新,从而加快用户交互速度,让您无需记住手动更新合并表。

【讨论】:

  • 您好,感谢您对此的详细解释。我们最初让仪表板使用 Tableau 数据提取,但出于安全考虑,我们选择不使用它。 (登录凭据嵌入到 TDE 中)。到目前为止,我们正在尝试通过在我们的原始表上运行 Tableau 生成的查询来生成一个较小的数据集,Tableau 可以从中“获取”数据。
猜你喜欢
  • 2017-07-03
  • 1970-01-01
  • 1970-01-01
  • 2017-05-14
  • 2017-08-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多