pd的监控面板里面有1个监控面板 pd监控面板–>Size amplification
结合官网说明及rocksdb的原理,这个监控面板应该反映的是 数据的真正大小的存储空间/实际存储占用时的空间(数据的真正大小是100MB,但实际存储时耗掉了200MB空间)
1因为rocksdb 支持mvcc,同1份数据有多个版本,过期数据不会马上清理,这多个版本的数据也需要占据空间
2.rocksdb在compaction的过程中,例如将上一层的2份数据压缩到下一层,原始2份数据要等compaction完成后才能被删,所以也会造成空间放大,这个空间放大可以认为是2
所以,通过指标是不是可以去判断如果空间放大比很高,那么说明有可能旧版本数据没有及时清理,那可能说明gc时间设置过长,或者gc没有生效
不知道这个结论是不是正确?
但是疑问是不知道为什么这个promsql的公式是这么写的?需要* 2^20