跳到主要内容
跳到主要内容

system.metrics

在 ClickHouse Cloud 中进行查询

该系统表中的数据保存在 ClickHouse Cloud 中每个节点的本地。因此,如需获得所有数据的完整视图,需要使用 clusterAllReplicas 函数。更多详情请参阅此处

包含可即时计算或具有当前值的指标。例如,同时处理的查询数量或当前副本延迟时间。该表中的数据始终是最新的。

列:

  • metric (String) — 指标名称。
  • value (Int64) — 指标值。
  • description (String) — 指标描述。

你可以在源文件 src/Common/CurrentMetrics.cpp 中找到所有支持的指标。

示例

SELECT * FROM system.metrics LIMIT 10
┌─metric───────────────────────────────┬─value─┬─description────────────────────────────────────────────────────────────┐
│ Query                                │     1 │ 正在执行的查询数量                                            │
│ Merge                                │     0 │ 正在执行的后台合并数量                                  │
│ PartMutation                         │     0 │ 变更操作数量 (ALTER DELETE/UPDATE)                              │
│ ReplicatedFetch                      │     0 │ 正在从副本拉取的数据分片数量                       │
│ ReplicatedSend                       │     0 │ 正在发送至副本的数据分片数量                            │
│ ReplicatedChecks                     │     0 │ 正在进行一致性检查的数据分片数量                          │
│ BackgroundMergesAndMutationsPoolTask │     0 │ 关联后台池中活跃的合并和变更任务数量 │
│ BackgroundFetchesPoolTask            │     0 │ 关联后台池中活跃的拉取任务数量              │
│ BackgroundCommonPoolTask             │     0 │ 关联后台池中活跃的任务数量                │
│ BackgroundMovePoolTask               │     0 │ BackgroundProcessingPool 中用于移动操作的活跃任务数量           │
└──────────────────────────────────────┴───────┴────────────────────────────────────────────────────────────────────────┘

指标说明

AggregatorThreads

Aggregator 线程池中的线程数量。

AggregatorThreadsActive

在 Aggregator 线程池中正在运行任务的线程数量。

TablesLoaderForegroundThreads

异步加载器前台线程池中的线程数量。

TablesLoaderForegroundThreadsActive

在异步加载器前台线程池中正在运行任务的线程数量。

TablesLoaderBackgroundThreads

异步加载器后台线程池中的线程数量。

TablesLoaderBackgroundThreadsActive

在异步加载器后台线程池中正在运行任务的线程数量。

AsyncInsertCacheSize

缓存中异步插入哈希 ID 的数量。

AsynchronousInsertThreads

AsynchronousInsert 线程池中的线程数量。

AsynchronousInsertThreadsActive

在 AsynchronousInsert 线程池中正在运行任务的线程数量。

AsynchronousReadWait

正在等待异步读取的线程数量。

BackgroundBufferFlushSchedulePoolSize

BackgroundBufferFlushSchedulePool 中任务数量的上限。

BackgroundBufferFlushSchedulePoolTask

BackgroundBufferFlushSchedulePool 中活动任务的数量。该线程池用于定期刷新 Buffer。

BackgroundCommonPoolSize

关联的后台线程池中任务数量的上限。

BackgroundCommonPoolTask

关联的后台线程池中活动任务的数量。

BackgroundDistributedSchedulePoolSize

BackgroundDistributedSchedulePool 中任务数量的上限。

BackgroundDistributedSchedulePoolTask

BackgroundDistributedSchedulePool 中活动任务的数量。该线程池用于在后台执行分布式发送。

BackgroundFetchesPoolSize

关联的后台线程池中并发抓取操作数量的上限。

BackgroundFetchesPoolTask

关联的后台线程池中活动抓取操作的数量。

BackgroundMergesAndMutationsPoolSize

关联的后台线程池中活动合并和变更操作数量的上限。

BackgroundMergesAndMutationsPoolTask

关联的后台线程池中活动合并和变更操作的数量。

BackgroundMessageBrokerSchedulePoolSize

用于消息流的 BackgroundProcessingPool 中任务数量的上限。

BackgroundMessageBrokerSchedulePoolTask

用于消息流的 BackgroundProcessingPool 中活动任务的数量。

BackgroundMovePoolSize

用于移动操作的 BackgroundProcessingPool 中任务数量的上限。

BackgroundMovePoolTask

用于移动操作的 BackgroundProcessingPool 中活动任务的数量。

BackgroundSchedulePoolSize

BackgroundSchedulePool 中任务数量的上限。该线程池用于定期执行 ReplicatedMergeTree 任务,例如清理旧数据分片、修改数据分片、副本重新初始化等。

BackgroundSchedulePoolTask

BackgroundSchedulePool 中活动任务的数量。该线程池用于定期执行 ReplicatedMergeTree 任务,例如清理旧数据分片、修改数据分片、副本重新初始化等。

BackupsIOThreads

BackupsIO 线程池中的线程数量。

BackupsIOThreadsActive

在 BackupsIO 线程池中正在运行任务的线程数量。

BackupsThreads

BACKUP 线程池中的线程数量。

BackupsThreadsActive

在 BACKUP 线程池中正在运行任务的线程数量。

BrokenDistributedFilesToInsert

用于异步插入到 Distributed 表且已标记为损坏的文件数量。该指标在启动时从 0 开始计数。各分片上的文件数量会被求和。

CacheDetachedFileSegments

当前存在的已分离缓存文件分段数量。

CacheDictionaryThreads

CacheDictionary 线程池中的线程数量。

CacheDictionaryThreadsActive

在 CacheDictionary 线程池中正在运行任务的线程数量。

正在 CacheDictionary 线程池中运行任务的线程数量。

CacheDictionaryUpdateQueueBatches

CacheDictionaries 中更新队列里“批次”(一组键)的数量。

CacheDictionaryUpdateQueueKeys

CacheDictionaries 中更新队列里键的精确数量。

CacheFileSegments

现有缓存文件分段的数量。

ContextLockWait

在 Context 中等待锁的线程数量。这是全局锁。

DDLWorkerThreads

用于 ON CLUSTER 查询的 DDLWorker 线程池中的线程数量。

DDLWorkerThreadsActive

用于 ON CLUSTER 查询并正在运行任务的 DDLWorker 线程池中的线程数量。

DatabaseCatalogThreads

DatabaseCatalog 线程池中的线程数量。

DatabaseCatalogThreadsActive

DatabaseCatalog 线程池中正在运行任务的线程数量。

DatabaseOnDiskThreads

DatabaseOnDisk 线程池中的线程数量。

DatabaseOnDiskThreadsActive

DatabaseOnDisk 线程池中正在运行任务的线程数量。

DelayedInserts

由于某个 MergeTree 表分区的活动数据分片数量过多而被限流的 INSERT 查询数量。

DestroyAggregatesThreads

用于销毁聚合状态的线程池中的线程数量。

DestroyAggregatesThreadsActive

用于销毁聚合状态并正在运行任务的线程池中的线程数量。

DictCacheRequests

正在发送到缓存类型字典数据源的请求数量。

DiskObjectStorageAsyncThreads

DiskObjectStorage 异步线程池中的线程数量。

DiskObjectStorageAsyncThreadsActive

DiskObjectStorage 异步线程池中正在运行任务的线程数量。

DiskSpaceReservedForMerge

为当前正在运行的后台合并保留的磁盘空间。该值略大于当前正在合并的分片总大小。

DistributedFilesToInsert

用于异步插入到 Distributed 表的待处理文件数量。每个分片的文件数会被汇总。

DistributedSend

向远程服务器发送已 INSERT 到 Distributed 表的数据的连接数量。包括同步和异步模式。

EphemeralNode

在 ZooKeeper 中持有的临时节点数量。

FilesystemCacheElements

文件系统缓存元素(文件分段)

FilesystemCacheReadBuffers

活动缓存缓冲区的数量。

FilesystemCacheSize

文件系统缓存大小(字节)。

QueryCacheBytes

查询缓存的总大小(字节)。

QueryCacheEntries

查询缓存中的条目总数。

UncompressedCacheBytes

未压缩缓存的总大小(字节)。未压缩缓存通常不会提升性能,应尽量避免使用。

UncompressedCacheCells

CompiledExpressionCacheBytes

JIT 编译代码缓存所使用的总字节数。

CompiledExpressionCacheCount

JIT 编译代码缓存中的条目总数。

MMapCacheCells

使用 mmap(映射到内存)打开的文件数量。该指标用于将 local_filesystem_read_method 设置为 mmap 的查询。使用 mmap 打开的文件会保留在缓存中,以避免代价高昂的 TLB 刷新。

MarkCacheBytes

标记缓存的总大小(字节)。

MarkCacheFiles

缓存在标记缓存中的标记文件总数。

GlobalThread

全局线程池中的线程数量。

GlobalThreadActive

全局线程池中正在运行任务的线程数量。

HTTPConnection

到 HTTP 服务器的连接数量。

HashedDictionaryThreads

HashedDictionaryThreads

HashedDictionary 线程池中的线程数量。

HashedDictionaryThreadsActive

HashedDictionary 线程池中正在运行任务的线程数量。

IOPrefetchThreads

IO 预取线程池中的线程数量。

IOPrefetchThreadsActive

IO 预取线程池中正在运行任务的线程数量。

IOThreads

IO 线程池中的线程数量。

IOThreadsActive

IO 线程池中正在运行任务的线程数量。

IOUringInFlightEvents

当前正在处理中的 io_uring SQE 数量。

IOUringPendingEvents

等待提交的 io_uring SQE 数量。

IOWriterThreads

IO 写入线程池中的线程数量。

IOWriterThreadsActive

IO 写入线程池中正在运行任务的线程数量。

InterserverConnection

用于从其他副本获取数据分片的连接数量。

KafkaAssignedPartitions

Kafka 表当前被分配到的分区数量。

KafkaBackgroundReads

当前正在运行的后台读取数量(用于从 Kafka 填充物化视图)。

KafkaConsumers

活动的 Kafka 消费者数量。

KafkaConsumersInUse

当前被直接或后台读取使用的 Kafka 消费者数量。

KafkaConsumersWithAssignment

已分配到某些分区的活动 Kafka 消费者数量。

KafkaLibrdkafkaThreads

活动的 librdkafka 线程数量。

KafkaProducers

已创建的活动 Kafka 生产者数量。

KafkaWrites

当前正在向 Kafka 执行的 INSERT 操作数量。

KeeperAliveConnections

存活的连接数量。

KeeperOutstandingRequests

未完成请求的数量。

LocalThread

本地线程池中的线程数量。本地线程池中的线程来自全局线程池。

LocalThreadActive

本地线程池中正在运行任务的线程数量。

MMappedAllocBytes

所有 mmapped 分配的字节总和。

MMappedAllocs

mmapped 分配的总次数。

MMappedFileBytes

mmapped 文件区域的大小总和。

MMappedFiles

mmapped 文件的总数量。

MarksLoaderThreads

用于加载标记(marks)的线程池中的线程数量。

MarksLoaderThreadsActive

用于加载标记(marks)的线程池中正在运行任务的线程数量。

MaxDDLEntryID

DDLWorker 已处理的最大 DDL 记录 ID。

MaxPushedDDLEntryID

DDLWorker 已推送到 ZooKeeper 的最大 DDL 记录 ID。

MemoryTracking

服务器已分配的内存总量(字节)。

Merge

正在执行的后台合并数量。

MergeTreeAllRangesAnnouncementsSent

从远程服务器向发起服务器发送的、关于数据分片集合(针对 MergeTree 表)的正在进行中的通知数量。该指标在远程服务器端进行度量。

MergeTreeBackgroundExecutorThreads

MergeTreeBackgroundExecutor 线程池中的线程数量。

MergeTreeBackgroundExecutorThreadsActive

MergeTreeBackgroundExecutor 线程池中正在运行任务的线程数量。

MergeTreeDataSelectExecutorThreads

MergeTreeDataSelectExecutor 线程池中的线程数量。

MergeTreeDataSelectExecutorThreadsActive

MergeTreeDataSelectExecutor 线程池中正在运行任务的线程数量。

MergeTreePartsCleanerThreads

MergeTree 分片清理线程池中的线程数量。

MergeTreePartsCleanerThreadsActive

MergeTree 分片清理线程池中正在运行任务的线程数量。

MergeTreePartsLoaderThreads

MergeTree 分片加载线程池中的线程数量。

MergeTreePartsLoaderThreadsActive

MergeTree 分片加载线程池中正在运行任务的线程数量。

MergeTreeReadTaskRequestsSent

从远程服务器发往发起服务器、用于选择读取任务(针对 MergeTree 表)的正在进行中的回调请求数量。该指标在远程服务器端进行统计。

Move

当前正在执行的 move 操作数量。

MySQLConnection

使用 MySQL 协议的客户端连接数量。

NetworkReceive

从网络接收数据的线程数量。仅包含与 ClickHouse 相关的网络交互,不包括由第三方库产生的交互。

NetworkSend

向网络发送数据的线程数量。仅包含与 ClickHouse 相关的网络交互,不包括由第三方库产生的交互。

OpenFileForRead

当前为读取而打开的文件数量。

OpenFileForWrite

当前为写入而打开的文件数量。

ParallelFormattingOutputFormatThreads

ParallelFormattingOutputFormatThreads 线程池中的线程数量。

ParallelFormattingOutputFormatThreadsActive

ParallelFormattingOutputFormatThreads 线程池中正在运行任务的线程数量。

PartMutation

变更(ALTER DELETE/UPDATE)的数量。

PartsActive

处于活动状态的数据分片,被当前和即将进行的 SELECT 使用。

PartsCommitted

已弃用。参见 PartsActive。

PartsCompact

紧凑分片。

PartsDeleteOnDestroy

分片已被移动到其他磁盘,应在其自身析构函数中删除。

PartsDeleting

非活动数据分片,引用计数为 1,当前正由清理器删除。

PartsOutdated

非活动数据分片,仅可能被当前的 SELECT 使用,在这些 SELECT 结束后即可删除。

PartsPreActive

分片已在 data_parts 中,但尚未被 SELECT 使用。

PartsPreCommitted

已弃用。参见 PartsPreActive。

PartsTemporary

分片当前正在生成中,还不在 data_parts 列表中。

PartsWide

宽分片。

PendingAsyncInsert

正在等待刷盘的异步插入数量。

PostgreSQLConnection

使用 PostgreSQL 协议的客户端连接数量。

Query

正在执行的查询数量。

QueryPreempted

由于 priority 设置而被停止并处于等待状态的查询数量。

QueryThread

用于处理查询的线程数量。

RWLockActiveReaders

在表的 RWLock 上持有读锁的线程数量。

RWLockActiveWriters

在表的 RWLock 上持有写锁的线程数量。

RWLockWaitingReaders

在表的 RWLock 上等待获取读锁的线程数量。

RWLockWaitingWriters

在表的 RWLock 上等待获取写锁的线程数量。

Read

正在进行中的读(read、pread、io_getevents 等)系统调用数量。

ReadTaskRequestsSent

从远程服务器发往发起服务器、用于选择读取任务(针对 s3Cluster 表函数及类似场景)的正在进行中的回调请求数量。该指标在远程服务器端进行统计。

ReadonlyReplica

由于 ZooKeeper 会话丢失后重新初始化,或在未配置 ZooKeeper 的情况下启动,而当前处于只读状态的 Replicated 表数量。

RemoteRead

正在进行中的远程读取操作数量。

ReplicatedChecks

正在进行一致性检查的数据分片数量。

ReplicatedFetch

正在从副本拉取的数据分片数量。

ReplicatedSend

正在发送到副本的数据分片数量。

RestartReplicaThreads

RESTART REPLICA 线程池中的线程数。

RestartReplicaThreadsActive

在 RESTART REPLICA 线程池中正在运行任务的线程数。

RestoreThreads

用于 RESTORE 的线程池中的线程数。

RestoreThreadsActive

用于 RESTORE 的线程池中正在运行任务的线程数。

Revision

服务器的修订版本。对于每个发布版或候选发布版(补丁版本除外),该数字都会递增。

S3Requests

S3 请求次数。

SendExternalTables

向远程服务器发送外部表数据的连接数。外部表用于实现带有分布式子查询的 GLOBAL IN 和 GLOBAL JOIN 运算符。

SendScalars

向远程服务器发送标量数据的连接数。

StorageBufferBytes

Buffer 表缓冲区中的字节数。

StorageBufferRows

Buffer 表缓冲区中的行数。

StorageDistributedThreads

StorageDistributed 线程池中的线程数。

StorageDistributedThreadsActive

在 StorageDistributed 线程池中正在运行任务的线程数。

StorageHiveThreads

StorageHive 线程池中的线程数。

StorageHiveThreadsActive

在 StorageHive 线程池中正在运行任务的线程数。

StorageS3Threads

StorageS3 线程池中的线程数。

StorageS3ThreadsActive

在 StorageS3 线程池中正在运行任务的线程数。

SystemReplicasThreads

system.replicas 线程池中的线程数。

SystemReplicasThreadsActive

在 system.replicas 线程池中正在运行任务的线程数。

TCPConnection

到 TCP 服务器的连接数(使用原生接口的客户端),还包括服务器之间用于分布式查询的连接。

TablesToDropQueueSize

已被删除但正在等待后台数据清理的表的数量。

TemporaryFilesForAggregation

为外部聚合创建的临时文件数量。

TemporaryFilesForJoin

为 JOIN 创建的临时文件数量。

TemporaryFilesForSort

为外部排序创建的临时文件数量。

TemporaryFilesUnknown

为未知用途创建的临时文件数量。

ThreadPoolFSReaderThreads

用于 local_filesystem_read_method=threadpool 的线程池中的线程数。

ThreadPoolFSReaderThreadsActive

用于 local_filesystem_read_method=threadpool 的线程池中正在运行任务的线程数。

ThreadPoolRemoteFSReaderThreads

用于 remote_filesystem_read_method=threadpool 的线程池中的线程数。

ThreadPoolRemoteFSReaderThreadsActive

用于 remote_filesystem_read_method=threadpool 的线程池中正在运行任务的线程数。

ThreadsInOvercommitTracker

在 OvercommitTracker 内处于等待状态的线程数。

TotalTemporaryFiles

创建的临时文件总数。

VersionInteger

以 base-1000 的单个整数形式表示的服务器版本。例如,版本 11.22.33 被转换为 11022033。

Write

正在执行的写入(write、pwrite、io_getevents 等)系统调用数量。

ZooKeeperRequest

正在执行的对 ZooKeeper 的请求数量。

ZooKeeperSession

到 ZooKeeper 的会话(连接)数量。不应超过一个,因为使用多个到 ZooKeeper 的连接可能会由于 ZooKeeper 一致性模型允许缺乏线性化(过期读取)而导致错误。

ZooKeeperWatch

在 ZooKeeper 中的 watch(事件订阅)数量。

ConcurrencyControlAcquired

已获取的 CPU 槽位总数。

ConcurrencyControlSoftLimit

CPU 插槽数量的软限制值。

另请参阅