cockroachdb / cockroachdb/pebble
db: Double Lazy Seek Positioning
- Dominant language
- Go
- Stars
- 6k
- Forks
- 584
- Avg merge
- 16h 35m
- Merged PRs (30d)
- 5
Description
In #2002 , we discuss the idea of deferring a SeekPrefixGE by making a synthetic key, with a largest timestamp
available in the SSTable which is stored in BlockProperty.
See #5256 for more details.
The idea is to avoid block reads until needed, i.e until key rises to the top of the heap. We can also implement this idea
after loading an index block, this will now **defer data block reads again**. Using the BlockProperty we can look for the largest
timestamp within the block our key is at, we can compare this timestamp to the one we currently have. If its less than our
current one, then we can create a synthetic key again, this time with the largest timestamp in the block our key is present.
The benefit is that, if THIS synthetic key we made here is now actually not on top of the heap, we saved the data block read.
Jira issue: PEBBLE-1190
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.