帮你快速理解、总结文档立即下载

TDSTORE_LSM_SST_INFO

最近更新时间:2026-08-20 15:23:32
我的收藏

功能

INFORMATION_SCHEMA.TDSTORE_LSM_SST_INFO 用于展示集群中所有 hybrid 节点中,每个 SST 文件的明细信息,包括所属 ColumnFamily 和层级、文件大小、key 范围、序列号范围、记录数、是否正在 Compaction 等,用于定位具体的小文件、异常文件或排查 Compaction 堆积问题。

适用版本

TDSQL Boundless V21.6.4.0及以上版本。

字段说明

字段名
类型
描述
NODE_NAME
VARCHAR(513)
SQLEngine 节点的名称。
CF_NAME
VARCHAR(193)
ColumnFamily 的名称。
CF_ID
BIGINT UNSIGNED
ColumnFamily 的 ID。
LEVEL
BIGINT UNSIGNED
该 SST 文件所在的 LSM-tree 层级。
FILE_NUMBER
BIGINT UNSIGNED
SST 文件的编号。
FILE_NAME
VARCHAR(1024)
SST 文件名。
FILE_PATH
VARCHAR(1024)
SST 文件的完整路径。
SIZE_BYTES
BIGINT UNSIGNED
SST 文件的大小,单位字节。
COMPRESSION_TYPE
VARCHAR(193)
SST 文件的压缩类型。
SMALLEST_KEY_HEX
VARCHAR(1024)
SST 文件中最小 key 的十六进制表示。
LARGEST_KEY_HEX
VARCHAR(1024)
SST 文件中最大 key 的十六进制表示。
SMALLEST_SEQNO
BIGINT UNSIGNED
SST 文件中最小的内部序列号(sequence number)。
LARGEST_SEQNO
BIGINT UNSIGNED
SST 文件中最大的内部序列号(sequence number)。
NUM_ENTRIES
BIGINT UNSIGNED
SST 文件中的记录条数(含删除标记)。
NUM_DELETIONS
BIGINT UNSIGNED
SST 文件中删除标记的数量。
NUM_READS_SAMPLED
BIGINT UNSIGNED
SST 文件被采样读取的次数,用于评估文件的读热度。
BEING_COMPACTED
BIGINT UNSIGNED
该 SST 文件是否正在被 Compaction,1 表示是,0 表示否。
FILE_CREATION_TIME
TIMESTAMP
SST 文件的创建时间。
OLDEST_ANCESTER_TIME
TIMESTAMP
SST 文件最早祖先文件的创建时间,用于追溯数据的原始写入时间。
TEMPERATURE
BIGINT
SST 文件的冷热温度标记。

使用说明

查询时可通过 WHERE CF_ID = xxxWHERE LEVEL = xxx 等值条件进行下推过滤,仅拉取指定 ColumnFamily 或指定层级的 SST 明细,减少 RPC 数据量。目前仅支持 CF_IDLEVEL 两个字段的等值条件下推,其余条件(如 SIZE_BYTES > xxx 范围查询)仍由 SQL 层过滤。
由于单个 ColumnFamily 可能包含大量 SST 文件,本视图针对每个节点的单次返回行数设置了上限,由系统变量 tdstore_lsm_sst_info_max_rows 控制(默认10000,0表示不限制)。当某个节点的 SST 文件数量超过该上限时,查询会报错并提示增大该变量或补充 CF_IDLEVEL 过滤条件缩小返回范围。

示例

查询指定 ColumnFamily(CF_ID = 20)第0层的 SST 文件明细。
tdsql>select * from information_schema.tdstore_lsm_sst_info
where cf_id = 20 and level = 0 limit 1\\G
*************************** 1. row ***************************
NODE_NAME: node-1-001
CF_NAME: user_region_20
CF_ID: 20
LEVEL: 0
FILE_NUMBER: 128
FILE_NAME: 000128.sst
FILE_PATH: /data/tdstore/data_db/000128.sst
SIZE_BYTES: 6291456
COMPRESSION_TYPE: kLZ4Compression
SMALLEST_KEY_HEX: 0000274A80000001
LARGEST_KEY_HEX: 0000274A800003E8
SMALLEST_SEQNO: 100234
LARGEST_SEQNO: 100897
NUM_ENTRIES: 1000
NUM_DELETIONS: 12
NUM_READS_SAMPLED: 3
BEING_COMPACTED: 0
FILE_CREATION_TIME: 2026-07-20 10:23:11
OLDEST_ANCESTER_TIME: 2026-07-20 10:23:11
TEMPERATURE: 0
1 row in set (0.01 sec)
查询小文件(小于8MB)的数量,用于评估某个 ColumnFamily 的小文件治理需求。
tdsql>select cf_id, count(*) as small_file_count
from information_schema.tdstore_lsm_sst_info
where cf_id = 20 and size_bytes < 8388608
group by cf_id;
+-------+-------------------+
| CF_ID | small_file_count |
+-------+-------------------+
| 20 | 47 |
+-------+-------------------+
1 row in set (0.02 sec)
注意:
当查询未指定 CF_IDLEVEL 等值条件时,会拉取所有节点、所有层级的 SST 文件明细,在 SST 文件数量较多的集群中可能造成较大的 RPC 开销和响应延迟,建议尽量补充过滤条件缩小查询范围。