diff --git a/README.md b/README.md index 2e4a6cf..eb402b4 100644 --- a/README.md +++ b/README.md @@ -96,7 +96,7 @@ ![kv_overview](./assets/kvsep_overview.png) -KV分离发生在 `leveldb` 的小合并的过程中,用户可以自定义一个 `kv_sep_threshold` ,默认为 `1000` ,单位是Byte。当数据从内存中落盘时,根据 `value` 的大小是否超过阈值判断是否要进行KV分离,由于小的Value并不会造成明显的写放大,如果进行分离会严重影响其读性能,弊大于利,因此仅对大的Value进行KV分离是一种能提高小Value读取速度的优化。 +KV分离发生在 `leveldb` 的小合并的过程中,用户可以自定义一个 `kv_sep_threshold` ,默认为 `1000` ,单位是Byte。当数据从内存中落盘时,根据 `value` 的大小是否超过阈值判断是否要进行KV分离,由于小的Value并不会造成明显的写放大,如果进行分离会影响其读性能,同时多写入一次磁盘,造成额外的写放大因此仅对大的Value进行KV分离是一种能提高小Value读取速度并进一步降低写放大的优化。 此时,存入SSTable的 `value` 存在两种情况: