CORTEX_SEARCH_REFRESH_HISTORY 视图¶
此 Account Usage 视图显示 Cortex Search 刷新历史记录的信息。
列¶
列名称 |
数据类型 |
描述 |
|---|---|---|
NAME |
VARCHAR |
Cortex Search 服务的名称。 |
SCHEMA_NAME |
VARCHAR |
包含 Cortex Search 服务的架构的名称。 |
DATABASE_NAME |
VARCHAR |
包含 Cortex Search 服务的数据库的名称。 |
STATE |
VARCHAR |
Cortex Search 服务的刷新状态。可以是以下之一:. – EXECUTING:刷新正在进行。. – SUCCEEDED:刷新成功完成。. – FAILED:执行期间刷新失败。. – CANCELLED:刷新在执行前被取消。 |
DATA_TIMESTAMP |
TIMESTAMP_LTZ |
评估刷新时的事务时间戳。(这可能略早于刷新的实际时间。Cortex Search 服务目前包含在该时间戳之前到达的基本对象中的所有数据。 |
REFRESH_START_TIME |
TIMESTAMP_LTZ |
刷新作业开始的时间。 |
REFRESH_END_TIME |
TIMESTAMP_LTZ |
刷新完成的时间。 |
INDEX_PREPROCESSING_DURATION |
NUMBER |
索引预处理阶段的持续时间(以毫秒为单位)。 |
INDEX_PREPROCESSING_QUERY_ID |
VARCHAR |
执行索引预处理的查询的 ID。 |
INDEX_PREPROCESSING_STATISTICS |
OBJECT |
包含以下索引预处理属性:. – |
INDEXING_DURATION |
NUMBER |
索引阶段的持续时间(以毫秒为单位)。 |
INDEXING_QUERY_ID |
VARCHAR |
执行索引的查询的 ID。 |
REFRESH_ACTION |
VARCHAR |
以下之一:. – NO_DATA – 基础表中没有新数据。. – FULL – Cortex Search 服务全量刷新。. – INCREMENTAL – Cortex Search 服务增量刷新。 |
REFRESH_TRIGGER |
VARCHAR |
以下之一:. – SCHEDULED – 正常后台刷新,使服务保持最新。. – MANUAL – 用户使用 ALTER CORTEX SEARCH SERVICE 手动触发刷新。. – CREATION – 在执行创建 DDL 语句期间执行的刷新。 |
TARGET_LAG_SEC |
NUMBER |
描述刷新时 Cortex Search 服务的目标滞后值。 |
WAREHOUSE |
VARCHAR |
用于刷新操作的仓库名称。 |
ERROR |
VARCHAR |
如果刷新失败,则显示错误消息,否则显示 NULL。 |
使用说明¶
视图的延迟时间最长可达 3 小时。
要查询该视图,请使用已获得 SNOWFLAKE、USAGE_VIEWER 授权的角色。数据库角色。
以下实参可用于筛选结果:
NAME:选择使用 时默认使用的角色和仓库。按 Cortex Search 服务名称筛选。DATA_TIMESTAMP_START:选择使用 时默认使用的角色和仓库。筛选在指定时间戳或之后发生的刷新结果。DATA_TIMESTAMP_END:选择使用 时默认使用的角色和仓库。筛选在指定时间戳或之前发生的刷新结果。RESULT_LIMIT:选择使用 时默认使用的角色和仓库。限制返回的结果数量。
示例¶
查找过去一周内失败的 Cortex Search 服务刷新:
SELECT data_timestamp,
database_name,
schema_name,
name,
state,
error,
refresh_trigger
FROM SNOWFLAKE.ACCOUNT_USAGE.CORTEX_SEARCH_REFRESH_HISTORY
WHERE state = 'FAILED'
AND data_timestamp >= DATEADD(WEEK, -1, CURRENT_DATE())
ORDER BY data_timestamp DESC
LIMIT 10;
查找特定 Cortex Search 服务最近的手动刷新:
SELECT data_timestamp,
refresh_start_time,
refresh_end_time,
refresh_action,
state
FROM SNOWFLAKE.ACCOUNT_USAGE.CORTEX_SEARCH_REFRESH_HISTORY(
NAME => 'MYSVC',
DATA_TIMESTAMP_START => DATEADD(DAY, -7, CURRENT_TIMESTAMP()),
RESULT_LIMIT => 20
)
WHERE refresh_trigger = 'MANUAL'
ORDER BY data_timestamp DESC;
分析 Cortex Search 服务的刷新性能:
SELECT name,
data_timestamp,
index_preprocessing_duration,
indexing_duration,
(refresh_end_time::TIMESTAMP_NTZ - refresh_start_time::TIMESTAMP_NTZ) AS total_refresh_duration_sec,
index_preprocessing_statistics:numInsertedRows AS rows_processed
FROM SNOWFLAKE.ACCOUNT_USAGE.CORTEX_SEARCH_REFRESH_HISTORY
WHERE name = 'MYSVC'
AND state = 'SUCCEEDED'
AND data_timestamp >= DATEADD(DAY, -30, CURRENT_DATE())
ORDER BY data_timestamp DESC;