AGGREGATE_ACCESS_HISTORY 视图¶
此 Account Usage 视图提供了 Snowflake 中所有工作负载的汇总 访问历史记录。当工作负载涉及高度循环的事务性查询时,这些查询的访问模式也会经常重复。以聚合方式查看此类访问历史记录信息更为有效。
AGGREGATE_ACCESS_HISTORY 视图包含与 ACCESS_HISTORY 视图 类似的数据,这些数据以一分钟为间隔,对重复查询进行汇总。
此视图还提供与分析性查询和事务性查询相关的访问历史记录信息。相比之下,请注意,ACCESS_HISTORY 视图 包含的访问历史记录信息仅与出现在 QUERY_HISTORY 视图 中的查询有关,不包括某些短期运行的事务性查询。
列¶
列名称 |
数据类型 |
描述 |
---|---|---|
INTERVAL_START_TIME |
TIMESTAMP_LTZ |
测量窗口的开始时间。 |
INTERVAL_END_TIME |
TIMESTAMP_LTZ |
测量窗口的结束时间。 |
QUERY_PARAMETERIZED_HASH |
TEXT |
用于识别相同的参数化查询的唯一 ID。请参阅 QUERY_PARAMETERIZED_HASH 列。 |
USER_NAME |
TEXT |
发出查询的用户。 |
CALLS |
NUMBER |
在 INTERVAL_START_TIME 和 INTERVAL_END_TIME 指定的时间窗口内,由特定参数化查询和用户触发的访问行为发生的次数。 |
DIRECT_OBJECTS_ACCESSED |
ARRAY |
数据对象的 JSON 数组,例如用户定义的函数(即 UDFs 和 UDTFs)、存储过程、表、视图和列,这些对象直接在查询中显式命名,或者通过快捷方式(例如使用星号 虚拟列可以在此字段中返回。 有关 UDFs 的其他说明,请参阅 UDF 说明。 |
BASE_OBJECTS_ACCESSED |
ARRAY |
要执行查询的所有基本数据对象的 JSON 数组,包括列、外部函数、UDFs 和存储过程。 在 ACCESS_HISTORY 视图 的示例中,第一个数组中的字段指定了一个 UDF。如果适用,第一个数组中的这些相同字段还指定存储过程。 请注意以下事项:
|
OBJECTS_MODIFIED |
ARRAY |
JSON 数组,指定与查询中的写入操作关联的对象。 UDF 和存储过程数组与 ACCESS_HISTORY 视图 的示例中的 有关 UDFs 的其他说明,请参阅 UDF 说明。 |
OBJECT_MODIFIED_BY_DDL |
OBJECT |
指定对数据库、架构、表、视图和列执行的 DDL 操作。这些操作还包括针对表或视图指定行访问策略、针对列指定掩码策略以及针对对象或列指定标签更新(例如设置标签、更改标签值)的语句。 |
POLICIES_REFERENCED |
ARRAY |
指定有关列上设置的强制掩码策略和表上设置的强制行访问策略的信息,包括对中间对象或列设置的策略。 |
下面介绍 DIRECT_OBJECTS_ACCESSED、BASE_OBJECTS_ACCESSED、OBJECTS_MODIFIED 和 POLICIES_REFERENCED 列的 JSON 数组中的字段。
字段 |
数据类型 |
描述 |
---|---|---|
columnId |
NUMBER |
账户中唯一的列 ID。此值与 COLUMNS 视图的 |
columnName |
TEXT |
访问的列的名称。对于策略,指定为其设置掩码策略的列。 |
objectId |
NUMBER |
对象的标识符,在给定账户和域中唯一。此数字将匹配: |
objectName |
TEXT |
所访问对象的完全限定名称。 如果对列设置掩码策略,或者对表或视图设置行访问策略,则该值指设置行访问策略的表或视图的完全限定名称,或者对其中一列设置掩码策略的表或视图的完全限定名称。 如果访问了暂存区,则此值将为: |
objectDomain |
TEXT |
以下其中一项: 请注意, 对于策略,指定对其设置了行访问策略的对象所属的域。 |
location |
TEXT |
从外部位置访问数据时的外部位置 URL(例如 如果查询未访问暂存区,则忽略此字段。 |
stageKind |
TEXT |
向暂存区写入数据时,以下其中一项: 如果查询未访问暂存区,则忽略此字段。 |
baseSources |
TEXT |
这些列用作 |
directSources |
TEXT |
这些列专门在 SQL 语句的数据 写入 部分提及,用作数据写入的目标表中的源列。这些列有助于列沿袭。 |
policyName |
TEXT |
策略的完全限定名称。 |
policyId |
NUMBER |
策略的标识符,在给定账户和域中唯一。此值匹配 MASKING_POLICIES 视图 中掩码策略的标识符,或者 ROW_ACCESS_POLICIES 视图 中行访问策略的标识符 |
policyKind |
TEXT |
MASKING_POLICY 或 ROW_ACCESS_POLICY |
argumentSignature |
TEXT |
UDF 或存储过程中每个实参的名称和数据类型。 |
dataType |
UDF 或存储过程的返回值的数据类型。 此值有助于区分两个或多个具有相同名称但具有不同返回类型的 UDFs。 |
下面介绍了 OBJECT_MODIFIED_BY_DDL 列的字段。
字段 |
数据类型 |
描述 |
---|---|---|
objectDomain |
TEXT |
由 DDL 操作定义或修改的对象的域,其中包括 可标记的所有对象,以及 |
objectId |
NUMBER |
对象的标识符,在给定账户和域中唯一,由 DDL 操作定义或修改。 |
objectName |
TEXT |
由 DDL 操作定义或修改的对象的完全限定名称。 |
operationType |
TEXT |
用于指定对表、视图或列执行的操作的 SQL 关键字: |
properties |
ARRAY |
JSON 数组,用于在您创建、修改、删除或取消删除对象或列时指定对象或列属性。有两种类型的属性:原子性和复合性。 |
对于 properties
字段:
原子性:每个属性有一个值(例如,
comment
有一个字符串值,enabled
属性是布尔值,并且有一个值)。复合性:每个属性有多个值(例如
allowed_values
适用于标签、掩码策略)。
复合属性以 JSON 数组记录。例如,如果表包含名为 EMAIL 的单个列,则该列记录如下:
columns: {
"email": {
objectId: {
"value": 1
},
"subOperationType": "ADD"
}
}
subOperationType
可以是以下其中一项:
ADD
指定添加复合属性(例如,添加列、设置允许的值)。DROP
指定移除复合属性。ALTER
指定修改复合属性。
objectId
指定列或对象的标识符,但没有标识符的允许标签值除外。
使用说明¶
视图的延迟时间最长可达 180 分钟(3 小时)。
此 Account Usage 视图可用于查询过去 365 天(1 年)内,Snowflake 对象(例如表、视图、列)的汇总访问历史记录。