如何从手动分区的 BigQuery table 引用最新的 table
How to reference the latest table from a manually partitioned BigQuery table
我们有一个手动分区的 "video metadata" table 每天都会收到新数据。在我们的系统中,旧数据仅出于历史原因保留,因为最新数据是最新的。
我们无法弄清楚的是如何使用 LookML 仅引用此 table 中的最新分区。
到目前为止,我们已经尝试在 BigQuery 中存储视图。我们尝试过将一个简单的 "fetch the newest partition" 查询存储为标准和遗留 SQL 中的视图,但失败了,并且在一些搜索中,这似乎是设计使然,即使错误消息指出 "Dataset not found" 而不是更相关的东西。
我们也尝试过将过滤功能内置到 Looker 中,但我们在实际工作中遇到了麻烦,并且只能通过它返回最新数据。
如有任何帮助,我们将不胜感激。
我们已经设法找到解决方案,导出 tables
我们认为由于无法在 BigQuery 端定义视图,我们可以在 Looker 端定义视图,因此我们在视图内的 derived table 块中定义了 table。
derived_table: {
sql: SELECT * FROM dataset.table_*
WHERE _TABLE_SUFFIX = (
SELECT max(_TABLE_SUFFIX) FROM dataset.table_*
);;
sql_trigger_value: SELECT max(_TABLE_SUFFIX) FROM dataset.table_*;;
}
这给了我们一个只有最新数据的视图。
我们有一个手动分区的 "video metadata" table 每天都会收到新数据。在我们的系统中,旧数据仅出于历史原因保留,因为最新数据是最新的。
我们无法弄清楚的是如何使用 LookML 仅引用此 table 中的最新分区。
到目前为止,我们已经尝试在 BigQuery 中存储视图。我们尝试过将一个简单的 "fetch the newest partition" 查询存储为标准和遗留 SQL 中的视图,但失败了,并且在一些搜索中,这似乎是设计使然,即使错误消息指出 "Dataset not found" 而不是更相关的东西。
我们也尝试过将过滤功能内置到 Looker 中,但我们在实际工作中遇到了麻烦,并且只能通过它返回最新数据。
如有任何帮助,我们将不胜感激。
我们已经设法找到解决方案,导出 tables
我们认为由于无法在 BigQuery 端定义视图,我们可以在 Looker 端定义视图,因此我们在视图内的 derived table 块中定义了 table。
derived_table: {
sql: SELECT * FROM dataset.table_*
WHERE _TABLE_SUFFIX = (
SELECT max(_TABLE_SUFFIX) FROM dataset.table_*
);;
sql_trigger_value: SELECT max(_TABLE_SUFFIX) FROM dataset.table_*;;
}
这给了我们一个只有最新数据的视图。