【发布时间】:2021-07-14 07:27:36
【问题描述】:
我在一个数据库下的两个架构中有一组视图,我想知道哪些视图最常被外部访问使用,例如(Power BI,BO..)。雪花中有什么方法可以识别吗?
【问题讨论】:
标签: snowflake-cloud-data-platform
我在一个数据库下的两个架构中有一组视图,我想知道哪些视图最常被外部访问使用,例如(Power BI,BO..)。雪花中有什么方法可以识别吗?
【问题讨论】:
标签: snowflake-cloud-data-platform
每次外部工具访问雪花对象(在您的情况下为视图)时,都会在雪花的查询历史记录中捕获。
要比较哪些视图最常用,您可以比较每个视图的访问次数。
以下 SQL 查询访问查询历史记录,并按视图名称过滤,并给出在给定时间范围内访问视图的次数:
select count(1) as "ACCESS_COUNT" from snowflake.account_usage.query_history where start_time between '<yyyy-mm-dd hh:mm:ss>' and '<yyyy-mm-dd hh:mm:ss>' and database_name = '<db_name>' and query_text ilike '%<view_name>%' ;
请注意,结果还将包括任何其他用户(而不仅仅是外部工具)访问视图的计数
要优化搜索,您可以添加更多过滤器。这是query_history View 中的列列表。
【讨论】: