功能
information_schema.META_CLUSTER_INSTALL_SNAPSHOT_PROGRESS 视图用于查看集群内当前正在进行的副本快照安装(Install Snapshot)进度。TDSQL Boundless 存储引擎基于 Raft 协议实现多副本一致性。当副本组(Replication Group)新增副本、或某个副本的日志进度已落后过多(超出来源节点保留的日志范围)时,系统会通过快照安装机制将全量数据发送给该副本,帮助其快速追平数据,而不必逐条重放日志。该视图可帮助您:
实时查看集群内所有正在进行的快照安装任务及其文件传输进度。
定位某个副本组当前快照安装任务的数据来源节点和目标节点。
结合错误信息排查快照安装失败的原因。
该视图仅展示当前正在进行的快照安装任务,任务结束(完成或失败)后将从视图中移除。
适用版本
TDSQL Boundless V21.6.4.0及以上版本。
字段说明
META_CLUSTER_INSTALL_SNAPSHOT_PROGRESS 视图各字段的含义如下表所示:字段名 | 类型 | 描述 |
SOURCE_NODE | varchar(256) | 该快照数据的来源节点地址。 |
DEST_NODE | varchar(256) | 该快照数据要安装的目标节点地址,即需要追平数据的副本所在节点。 |
TERM | bigint unsigned | 发起该次快照安装时,来源节点所在的 Raft 任期(Term)。 |
TYPE | varchar(64) | 触发本次快照安装的原因: Replica 表示该副本为新增副本,需要通过快照直接获取全量数据;Log Delay 表示该副本已存在,但日志进度落后过多,需要通过快照追平数据。 |
REP_GROUP_ID | bigint unsigned | 该快照安装任务所属的副本组(Replication Group)ID。 |
START_TIME | varchar(64) | 该快照安装任务的开始时间。 |
TRANSFERED_FILE_NUM | bigint unsigned | 目标节点已接收的文件数量。 |
TOTAL_FILE_NUM | bigint unsigned | 本次快照安装涉及的文件总数量。 |
REMAINING_FILE_NUM | bigint unsigned | 尚未传输完成的文件数量,等于 TOTAL_FILE_NUM 减去 TRANSFERED_FILE_NUM。 |
FILE_PROGRESS | varchar(64) | 按文件数量计算的传输进度,取值范围0 - 1,保留4位小数。 |
FILE_PROGRESS_PERCENT | varchar(64) | 按文件数量计算的传输进度百分比,保留2位小数。 |
TRANSFERED_FILE_SIZE | varchar(64) | 已传输的数据大小,为便于阅读的格式化结果,例如 1.2 GB。 |
TOTAL_FILE_SIZE | varchar(64) | 本次快照安装涉及的数据总大小,为便于阅读的格式化结果。 |
REMAINING_FILE_SIZE | varchar(64) | 尚未传输完成的数据大小,为便于阅读的格式化结果,等于 TOTAL_FILE_SIZE 减去 TRANSFERED_FILE_SIZE。 |
TRANSFERED_FILE_SIZE_BYTES | bigint unsigned | 已传输的数据大小,单位为字节。 |
TOTAL_FILE_SIZE_BYTES | bigint unsigned | 本次快照安装涉及的数据总大小,单位为字节。 |
REMAINING_FILE_SIZE_BYTES | bigint unsigned | 尚未传输完成的数据大小,单位为字节。 |
SIZE_PROGRESS | varchar(64) | 按数据大小计算的传输进度,取值范围0 - 1,保留4位小数。 |
SIZE_PROGRESS_PERCENT | varchar(64) | 按数据大小计算的传输进度百分比,保留2位小数。 |
STAGE | varchar(64) | 该快照安装任务当前所处的阶段。由于该视图仅展示进行中的任务,该字段恒为 doing。 |
ERR_MSG | varchar(256) | 该快照安装任务的错误信息,无错误时为空。 |
COST_INFO | longtext | 该快照安装任务各阶段的耗时统计信息。 |
注意:
TRANSFERED_FILE_NUM、TRANSFERED_FILE_SIZE 等已传输相关字段由目标节点上报;TOTAL_FILE_NUM、TOTAL_FILE_SIZE、TYPE、ERR_MSG 等字段由来源节点上报。若目标节点或来源节点尚未上报对应信息,相关字段可能为 NULL。若某个快照安装任务长时间停留在当前进度不再增长,可能是目标节点或来源节点资源不足、网络异常等原因导致,请结合
ERR_MSG 字段排查具体原因。示例
示例 1:查看集群内所有正在进行的快照安装任务
SELECT SOURCE_NODE,DEST_NODE,REP_GROUP_ID,TYPE,FILE_PROGRESS_PERCENT,SIZE_PROGRESS_PERCENT,START_TIMEFROM information_schema.META_CLUSTER_INSTALL_SNAPSHOT_PROGRESS;
示例 2:查看某个副本组当前的快照安装进度
SELECT *FROM information_schema.META_CLUSTER_INSTALL_SNAPSHOT_PROGRESSWHERE REP_GROUP_ID = 100001;
示例 3:排查快照安装失败的任务
SELECT SOURCE_NODE,DEST_NODE,REP_GROUP_ID,TYPE,ERR_MSGFROM information_schema.META_CLUSTER_INSTALL_SNAPSHOT_PROGRESSWHERE ERR_MSG IS NOT NULLAND ERR_MSG <> '';
注意事项
该视图仅展示当前正在进行(
STAGE 为 doing)的快照安装任务,任务完成或失败后将从视图中移除,不提供历史记录查询。该视图汇聚展示集群内所有存储节点上的快照安装任务,无需分别登录各节点查看。