问题描述
我在BigQuery base_table
中有3列,即name
,gender
和amount_spent
。我创建了一个实体化视图base_table_mv
,其中name
和sum(amount_spent)
被name
分组。当我查询base_table
SELECT name,SUM(amount_spent) FROM base_table GROUP BY name
BigQuery的查询优化器使用base_table_mv
而不是去base_table
。这反映在查询详细信息中,其中Input
针对READ
和base_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 (将#修改为@)