如何在 google bigquery 数据集中创建动态表并在 tableau 中访问?

Posted

技术标签:

【中文标题】如何在 google bigquery 数据集中创建动态表并在 tableau 中访问?【英文标题】:How to create dynamic tables in google bigquery dataset and access in tableau? 【发布时间】:2017-06-09 07:04:17 【问题描述】:

我有一个 BigQuery 数据库,我想创建动态表。

例如:table_20170609 - 如果日期是 2017 年 6 月 9 日 table_20170610 - 如果日期是 2017 年 6 月 10 日

每天我都会得到一些excel数据,我必须上传到上面动态创建的表格中。 excel中的数据不是按天计算的,它是从开始日期到今天的日期。

我知道将 bigquery 连接到 tableau 并运行查询。是否有任何自动化方法可以让 tableau 从 bigquery 读取动态表并生成报告。

当前工作 - 我创建了一个表(报告),每天我都会将表报告重命名为 reports_bkp_date 并将创建新的表报告。

我是 bigquery 和 tableau 的新手,我想知道 -如何在 bigquery 中创建动态表?如何将动态表连接到 tableau (每天我不应该手动更改表名)?

【问题讨论】:

我不太明白您想要实现的目标,但听起来分区表可能会有所帮助:cloud.google.com/bigquery/docs/partitioned-tables。您不是每天创建一个表,而是每天创建一个分区。 【参考方案1】:

您有两个直接的选择 - 首先,在 BigQuery 中创建一个视图(而不是表),它将所有相关表整理在一起,然后在 Tableau 中连接到该视图。

鉴于您必须每天手动上传新表,更好的方法是在 Tableau 中使用通配符表连接并为您的数据表使用类似的命名约定,例如您可以使用 DailyData_2017_ * 以下列格式捕获所有表格:

DailyData_2017_06_01

DailyData_2017_06_02

DailyData_2017_06_03

最后,请注意,您可以附加到 BigQuery 中的表,而不是替换其内容。如果您的数据带有时间戳,那么这也可能对您有用。

【讨论】:

谢谢本。现在我正在获取从开始日期到今天的数据。我不想连接画面中的其他表。只有我想将具有当前日期的表从 bigquery 连接到 tableau。 在这种情况下,我将创建一个显示今天的数据的视图,并连接到您在 Tableau 中的视图。希望对您有所帮助,本。 如果我使用视图,那么我无法创建从视图导出数据的 bigquery 作业

以上是关于如何在 google bigquery 数据集中创建动态表并在 tableau 中访问?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Google Bigquery 中创建动态更改数据集的查询?

如何在 Google bigquery 中为多个动态表创建授权视图?

如何使用 API 存储在 Google Cloud Storage 中的架构文件在 BigQuery 加载作业上设置架构?

Google 数据准备 - 无法从 BigQuery 导入表(从 Google 表格创建)“未找到”

使用用户定义的函数在 BigQuery 数据集中插入海量数据时如何优化性能

Bigquery如何在List操作期间过滤数据集中的表