influxdata / influxdata/influxdb
Refactor SeriesFile into an Interface
- Dominant language
- Rust
- Stars
- 31.7k
- Forks
- 3.7k
- Avg merge
- 13h 37m
- Merged PRs (30d)
- 8
Description
__Proposal:__
Refactor series file into an interface
__Current behavior:__
The current series file management we are using is a fixed type, rather than an interface.
If we can refactor it, we can implement our own custom series file.

I don't know why `Engine` and `Index` are interfaces but ignore `SeriesFile`. Even if we have a new TSDB engine, but we have to rely on this fixed `SeriesFile`
__Desired behavior:__
refactor series file into an interface
__Alternatives considered:__
__Use case:__
- customize series management, such as using some central service
Contributor guide
Research direction
Start by locating SeriesFile and comparing how Engine and Index are represented as interfaces. Review the existing series-file management and its consumers; done means custom series-file implementations can be substituted without breaking current behavior.
Written by the indexing model from the issue text.
Assessment
- Domain
- databases
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100