cockroachdb / cockroachdb/pebble
colblk: uint column families
- Dominant language
- Go
- Stars
- 6k
- Forks
- 584
- Avg merge
- 16h 35m
- Merged PRs (30d)
- 5
Description
There are a few instances where we have multiple uints that are always accessed together. Block handles, consisting of an offset and a length, are one example. If we stored blob value handles' components as colblk columns, they would be another example.
We could introduce a new column type that performs the Uints-type's width reduction and deltas, but stores each row's deltas together contiguously. This would allow us to combine those memory accesses scattered across the block into a single memory access, while preserving the fixed-width encoding and delta encoding.
Jira issue: PEBBLE-365
Contributor guide
No contributing guide indexed for this repository
Research direction
The issue names the colblk Uints type, block handles, and blob value handles, but no files or tests. Start by locating those existing column and handle implementations, then compare their encoding and access patterns. Done means a reviewed design and implementation for row-contiguous delta storage with preserved width reduction and fixed-width encoding.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- databases, performance
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100