leveldb
leveldb copied to clipboard
How seek compaction works?
Hello,
My team and I were using levelDB for our service. We found out that disabling seek compaction enhances our system speed.
We are wondering if we need write all the data to a new DB from the start.
I thought enabling the seek compaction will make levelDB with more levels. And disabling it will make a DB with less levels, ultimately. My teammate think turning on and off the seek compaction will only impact the timing. So, ultimately, the DB will be in the same state whether the seek compaction is on or off. Therefore, the DB will ultimately be the same, with same levels. Which one is right? Do we need to construct a new DB for speed improvement? Or we can just use the DB without seek compaction from now on?
p.s. We've tested and found out that turning off seek compaction will make less .ldb files. (It had more than 2 times difference.) From this test, can we say seek compaction has impact on levels, ultimately?
we just close the seek compaction,it's working pretty well.and we use manual compact every day!
@XiaoKa741 My team and I went through some tests and found out the seek compaction degrades the throughput. https://github.com/klaytn/klaytn/pull/715
Could you provide measurements before/after disabling seek compaction ?