DATABASE_REFRESH_PROGRESS、DATABASE_REFRESH_PROGRESS_BY_JOB¶
DATABASE_REFRESH_PROGRESS 函数系列可用于查询各个维度的数据库刷新状态:
DATABASE_REFRESH_PROGRESS 返回一个 JSON 对象,该对象按名称指示辅助数据库的当前刷新状态。
DATABASE_REFRESH_PROGRESS_BY_JOB 返回一个 JSON 对象,该对象通过刷新查询指示辅助数据库的当前刷新状态。
每个函数都针对沿指定维度的查询进行了优化。
备注
DATABASE_REFRESH_PROGRESS 仅返回最近 14 天内发生的数据库刷新活动。
DATABASE_REFRESH_PROGRESS_BY_JOB 返回过去 14 天内的数据库刷新活动。
语法¶
DATABASE_REFRESH_PROGRESS( '<secondary_db_name>' )
DATABASE_REFRESH_PROGRESS_BY_JOB( '<query_id>' )
实参¶
使用说明¶
仅返回账户管理员(具有 ACCOUNTADMIN 角色)的结果。
当调用 Information Schema 表函数时,会话必须具有正在使用的 INFORMATION_SCHEMA 架构,或者 函数名称必须受到完全限定。有关更多详细信息,请参阅 Snowflake Information Schema。
以下是所处理订单中的阶段列表:
SECONDARY_UPLOADING_INVENTORY
PRIMARY_UPLOADING_METADATA
PRIMARY_UPLOADING_DATA
SECONDARY_DOWNLOADING_METADATA
SECONDARY_DOWNLOADING_DATA
COMPLETED / FAILED / CANCELED
输出¶
该函数返回以下列:
列名称 |
数据类型 |
描述 |
---|---|---|
PHASE_NAME |
TEXT |
到目前为止已完成(或正在进行)的复制阶段的名称。有关阶段列表,请参阅使用说明。 |
RESULT |
TEXT |
复制阶段的状态。有效状态为 |
START_TIME |
NUMBER |
复制阶段开始的时间。格式为纪元时间。 |
END_TIME |
NUMBER |
该阶段结束的时间(如果适用)。格式为纪元时间。 |
DETAILS |
VARIANT |
仅由 DATABASE_REFRESH_PROGRESS 函数返回。`提供以下阶段详细信息的 JSON 对象::newline:.` – 主数据库上传数据:主数据库当前快照的时间戳。. – 主数据库上传数据 和 辅助数据库下载数据:数据库刷新中的总字节数以及该阶段到目前为止复制的字节数。. – 辅助数据库下载元数据:主数据库最新快照中的表、表列以及所有数据库对象(包括表和表列)的数量。 |
示例¶
检索 mydb1
数据库刷新的当前进度:
select * from table(information_schema.database_refresh_progress(mydb1));
按查询 ID 检索数据库刷新的当前进度:
select * from table(information_schema.database_refresh_progress_by_job('012a3b45-1234-a12b-0000-1aa200012345'));