tikv-ctl region-properties -r xxxxx命令输出的每项的内容具体含义是什么?比如mvcc.num_deletes和num_deletes的意思
mvcc.min_ts: 429442999677091842
mvcc.max_ts: 429442999677091842
mvcc.num_rows: 1044349
mvcc.num_puts: 1044349
mvcc.num_deletes: 0
mvcc.num_versions: 1044349
mvcc.max_row_versions: 1
num_entries: 1044349
num_deletes: 0
num_files: 1
sst_files: 453112.sst
middle_key_by_approximate_size:
github才是yyds呀~
4.0 版本 region-properties 详解:
-
num-files: 本 region 涉及的 SST 文件个数
-
num-entries: 本 region 范围内, 在 rocksdb 内的 kv 数量,包括 tombstone, 不去重 。为 rocksdb 直接计算所得。
-
num-delete: (num-entries-mvcc.num_versions),本 region 范围内,在 rocksdb 内的 tombstone key 的数量, 该数据量越大,说明当前服务需要进行 compaction 了。
-
mvcc.* 主要记录 tikv 层的 mvcc 信息。每个 sst 的自定义数据聚合,各个 sst 自行统计结果,自定义计算,所有结果都不包含 rocksdb 的 delete(tombstone)
-
mvcc.min_ts:当前 region 范围内,所有数据中最早提交的版本号。关于版本号:
-
每一次写入都会有一个版本号生成。
-
每个 key 的版本号在同一时间可能会有多个
-
旧的版本会随着 GC 进行被清理,最后留下一个最新写入的版本。比如 A 数据在系统开始就插入了,后面一直都没有任何写入操作,那么 A 数据的版本号则会一直是初次提交时的版本号。
-
-
mvcc.max_ts: 当前 region 范围内,所有数据中最晚提交的版本号。
-
mvcc.num-rows: 本 region 范围内, 去重的 key-value 个数。与 mvcc.num_versions 的区别是去重。可以理解为这个是 GC 做到极致后最后留的数据量。
-
mvcc.num-put: 本 region 范围内, 去重的 ,且类型是 txn-put (write_type == WriteType::Put )的个数。
-
mvcc.num_versions: 本 region 范围内,在 rocksdb 内所有版本的个数,类型是 rocksdb 的 put, Write类型 包括 PUT/DELETE, 不去重 。
-
mvcc.max_row_version: 版本最多的那个 key 的版本个数,数量多,说明 GC worker 可能跟不上版本生成的速度了
-
middle_key_by_approximate_size: 根据 size 估算中间 key ,主要用于 split region.
-
该主题在最后一个回复创建后60天后自动关闭。不再允许新的回复。