TDSQL Boundless TDSTORE_LSM_COMPACTION_PRESSURE

INFORMATION_SCHEMA.TDSTORE_LSM_COMPACTION_PRESSURE 用于展示集群中所有 hybrid 节点中,各个 ColumnFamily 的 Compaction 压力和写入限流状态,包括 L0 层文件堆积情况、待 Compaction 数据量、memtable 内存占用及写入限流原因,用于定位具体是哪个 ColumnFamily 导致写入延迟或写入被限速/停止。

相关产品
TDSQL Boundless 产品页,含版本规格、价格与购买入口。

一、适用版本

TDSQL Boundless V21.6.4.0及以上版本。

二、字段说明

字段名 类型 描述
NODE_NAME VARCHAR(513) SQLEngine 节点的名称。
CF_NAME VARCHAR(193) ColumnFamily 的名称。
CF_ID BIGINT UNSIGNED ColumnFamily 的 ID。
LEVEL0_FILE_COUNT BIGINT UNSIGNED L0 层的 SST 文件数量。
LEVEL0_SIZE_BYTES BIGINT UNSIGNED L0 层所有 SST 文件的总大小,单位字节。
PENDING_COMPACTION_BYTES BIGINT UNSIGNED 预估待 Compaction 处理的数据量,单位字节。
ACTIVE_MEMTABLE_BYTES BIGINT UNSIGNED 当前活跃 memtable 占用的内存大小,单位字节。
ALL_MEMTABLES_BYTES BIGINT UNSIGNED 包括活跃与不可变 memtable 的总内存占用,单位字节。
NUM_IMMUTABLE_MEMTABLE BIGINT UNSIGNED 尚未 flush 完成的不可变 memtable 数量。
MEMTABLE_LIMIT_DELAYS BIGINT UNSIGNED 因 memtable 内存超限而触发写入限速(delay)的累计次数。
MEMTABLE_LIMIT_STOPS BIGINT UNSIGNED 因 memtable 内存超限而触发写入停止(stop)的累计次数。
DB_WRITE_STALL_STATUS BIGINT 当前该 ColumnFamily 所属 DB 实例的写入限流状态:0表示 delayed,1表示 stopped,2表示 normal(无限流)。
NEED_SPEEDUP_COMPACTION BIGINT UNSIGNED 是否需要加速 Compaction,1表示是,0表示否。
WRITE_STALL_REASON VARCHAR(1024) 触发写入限流的具体原因说明。
BEING_COMPACTED_FILE_COUNT BIGINT UNSIGNED 该 ColumnFamily 中正在被 Compaction 的文件数量。

三、使用说明

查询时可通过 WHERE CF_ID = xxx 等值条件进行下推过滤,仅拉取指定 ColumnFamily 的压力数据。TDSTORE_LSM_COMPACTION_PRESSURE 视图没有层级(LEVEL)维度,仅支持 CF_ID 字段的等值条件下推。

四、示例

查询所有 ColumnFamily 中已触发写入限流(DB_WRITE_STALL_STATUS 不为2)的记录,定位造成写入抖动的具体 ColumnFamily。

tdsql>select node_name, cf_id, cf_name, level0_file_count, pending_compaction_bytes, db_write_stall_status, write_stall_reason from information_schema.tdstore_lsm_compaction_pressure where db_write_stall_status < 2;+—————+——-+—————-+——————–+—————————+————————+———————+| NODE_NAME | CF_ID | CF_NAME | LEVEL0_FILE_COUNT | PENDING_COMPACTION_BYTES | DB_WRITE_STALL_STATUS | WRITE_STALL_REASON |+—————+——-+—————-+——————–+—————————+————————+———————+| node-1-001 | 20 | user_region_20 | 42 | 8589934592 | 0 | l0_file_count_limit |+—————+——-+—————-+——————–+—————————+————————+———————+1 row in set (0.01 sec)

查询指定 ColumnFamily(CF_ID = 20)的完整压力指标。

tdsql>select * from information_schema.tdstore_lsm_compaction_pressure where cf_id = 20\\G*************************** 1. row *************************** NODE_NAME: node-1-001 CF_NAME: user_region_20 CF_ID: 20 LEVEL0_FILE_COUNT: 42 LEVEL0_SIZE_BYTES: 2684354560 PENDING_COMPACTION_BYTES: 8589934592 ACTIVE_MEMTABLE_BYTES: 67108864 ALL_MEMTABLES_BYTES: 134217728 NUM_IMMUTABLE_MEMTABLE: 1 MEMTABLE_LIMIT_DELAYS: 0 MEMTABLE_LIMIT_STOPS: 0 DB_WRITE_STALL_STATUS: 0 NEED_SPEEDUP_COMPACTION: 1 WRITE_STALL_REASON: l0_file_count_limitBEING_COMPACTED_FILE_COUNT: 61 row in set (0.01 sec)

赞 (0)
上一篇 4天前
下一篇 4天前