tidb 中的 key 和 MVCC value 解析
作者: h5n1 原文来源:https://tidb.net/blog/0b26a57e
【是否原创】是
【首发渠道】TiDB 社区
【正文】
**tidb 中的 key 和 MVCC value 解析 **
下面介绍下 tidb 中 key 和 mvcc value 的解析方式,供大家学习参考,不对之处还请指正,后续有其他信息会在此贴更新。
一、key 解码
1、 直接使用 TIDB_DECODE_KEY 函数进行解析
pd-ctl region 查看的 key 信息是一串十六进制字符串
TIDB_DECODE_KEY 是 5.0 版本开始有的 tidb 内置函数可以将 key 解析为包含 table_id/rowed 的 json 格式
2、 使用 ctl 工具转换
(1) 使用 tikv-ctl –to-escaped 将 key 转换为 escaped raw 格式
解析处理的格式已经包含 t_、_r
(2) 使用 tikv-ctl –to-hex 将每组字符转换为十六进制
使用转换后的十六进制进行替换
(3) 使用 tidb-ctl decoder 进行解码
二、 解析 MVCC 信息
1、 假设我们已经获得 key 的 rowid
2、使用 API 接口查询相应 rowid 的 MVCC 版本信息
curl “http://tidb-server:10081/mvcc/key/db_name/table_name/row_id”
可以看到该行数据已经有 2 个版本
3、 解析 mvcc 版本信息
使用 pd-ctl tso 解析 tso,使用 tidb-ctl base64decode 解析 MVCC value
版权声明: 本文为 InfoQ 作者【TiDB 社区干货传送门】的原创文章。
原文链接:【http://xie.infoq.cn/article/d0d392b1c8e0fd6ca90a337d3】。文章转载请联系作者。
评论