【发布时间】:2020-09-09 08:25:11
【问题描述】:
Snowflake 提供各种缓存选项,其中之一是结果缓存。我了解其他用户可以使用查询结果缓存来访问重复查询的结果(在 24 小时内执行),但他们应该是同一角色还是所有角色的用户都可以访问缓存结果?
如果工具的行为最近发生了变化,Snowpro 认证考试的正确之处是什么?
【问题讨论】:
标签: snowflake-cloud-data-platform
Snowflake 提供各种缓存选项,其中之一是结果缓存。我了解其他用户可以使用查询结果缓存来访问重复查询的结果(在 24 小时内执行),但他们应该是同一角色还是所有角色的用户都可以访问缓存结果?
如果工具的行为最近发生了变化,Snowpro 认证考试的正确之处是什么?
【问题讨论】:
标签: snowflake-cloud-data-platform
通常,如果满足以下所有条件,则查询结果会被重用:
参考:https://community.snowflake.com/s/article/Understanding-Result-Caching
【讨论】:
但是他们应该是同一个角色还是所有角色的用户都可以访问缓存结果?
result cache 应该在访问授权检查后很好地发挥作用,因此经过身份验证的用户或服务的角色成员身份无关紧要。
允许以与表(或视图)结果相同的方式读取缓存,并且Snowflake architecture 将存储和缓存与计算层分开,因此对其使用重要的唯一规则是the ones defined in the documentation .
【讨论】:
我了解访问缓存结果的角色具有所需的权限-
-- 如果查询是 SELECT 查询,则执行查询的角色必须对缓存查询中使用的所有表具有必要的访问权限。
-- 如果查询是 SHOW 查询,则执行查询的角色必须与生成缓存结果的角色匹配。
【讨论】: