更新基本表后扫描的Google BigQuery物化视图

问题描述

我在BigQuery base_table中有3列,即namegenderamount_spent。我创建了一个实体化视图base_table_mv,其中namesum(amount_spent)name分组。当我查询base_table

SELECT name,SUM(amount_spent) FROM base_table GROUP BY name

BigQuery的查询优化器使用base_table_mv而不是去base_table。这反映在查询详细信息中,其中Input针对READbase_table显示2个base_table_mv操作。

BigQuery Materialized View Documentation说,如果我更新base_table查询base_table,则查询优化器将无法利用实例化视图,并且仅扫描基表,直到下一个实例化为止查看刷新。然而,在我的设置中,我在更新base_table

的以下查询之后立即发出上述查询

UPDATE base_table SET amount_spent = 100 WHERE name = 'X'

并且查询详细信息仍显示2个READ操作,即查询在不应该进行的时候仍在扫描base_table_mv

任何人都可以请我解释一下吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)