Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

如何查看正在进行或排队中的变更数量?

问题

如何查看正在执行或排队等待的变更数量?

答案

如果你对表执行了大量 ALTERUPDATE 语句,监控正在执行或排队中的变更数量就很重要。这些查询会重写数据分区片段,而且不是原子操作——它们会按各自创建时对应的分区片段排序,并按该顺序应用到每个分区片段上。有关变更的更多详细信息,请参阅文档

每个变更都会在 system.mutations 表中生成一条记录。执行大量变更时,你可以通过以下方式监控正在运行和排队中的变更数量:

SELECT
   hostname() AS host,
   count()
   FROM clusterAllReplicas('default', 'system.mutations') WHERE not is_done
   GROUP BY host;

我们也建议阅读这篇最近发布的关于更新和删除的博客文章

Navigation