一、适用版本
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 = xxx 或 WHERE LEVEL = xxx 等值条件进行下推过滤,仅拉取指定 ColumnFamily 或指定层级的 SST 明细,减少 RPC 数据量。目前仅支持 CF_ID、LEVEL 两个字段的等值条件下推,其余条件(如 SIZE_BYTES > xxx 范围查询)仍由 SQL 层过滤。
由于单个 ColumnFamily 可能包含大量 SST 文件,本视图针对每个节点的单次返回行数设置了上限,由系统变量 tdstore_lsm_sst_info_max_rows 控制(默认10000,0表示不限制)。当某个节点的 SST 文件数量超过该上限时,查询会报错并提示增大该变量或补充 CF_ID/LEVEL 过滤条件缩小返回范围。
四、示例
查询指定 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:11OLDEST_ANCESTER_TIME: 2026-07-20 10:23:11 TEMPERATURE: 01 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_ID 或 LEVEL 等值条件时,会拉取所有节点、所有层级的 SST 文件明细,在 SST 文件数量较多的集群中可能造成较大的 RPC 开销和响应延迟,建议尽量补充过滤条件缩小查询范围。