-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Roadmap: improve and update #3641
Changes from 3 commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -7,27 +7,36 @@ category: Roadmap | |
|
||
This document defines the roadmap for TiKV development. | ||
|
||
- [ ] Raft | ||
- [x] Region merge | ||
- [ ] Local read thread | ||
- [ ] Multi-thread raftstore | ||
- [x] None voter | ||
- [x] Pre-vote | ||
- [ ] Multi-thread apply pool | ||
- [ ] Split region in batch | ||
- [ ] Raft Engine | ||
- [x] RocksDB | ||
- [x] DeleteRange | ||
- [ ] BlobDB | ||
- [x] Transaction | ||
- [x] Optimize transaction conflicts | ||
- [ ] Distributed GC | ||
- [x] Coprocessor | ||
- [x] Streaming | ||
- [ ] Tool | ||
- [x] Import distributed data | ||
- [ ] Export distributed data | ||
- [ ] Disaster Recovery | ||
- [ ] Flow control and degradation | ||
- [ ] Client | ||
- [ ] TiKV client (Rust crate) | ||
## Raft | ||
- [x] Region Merge - Merge small Regions together to reduce overhead | ||
- [x] Local Read Thread - Process read requests in a local read thread | ||
- [x] Split Region in Batch - Speed up Region split for large Regions | ||
- [x] Raft Learner - Support Raft learner to smooth the configuration change process | ||
- [x] Raft Pre-vote - Support Raft pre-vote to avoid unnecessary leader election on network isolation | ||
- [ ] Joint Consensus - Change multi members safely. | ||
- [ ] Multi-thread Raftstore - Process Region Raft logic in multiple threads | ||
- [ ] Multi-thread apply pool - Apply Region Raft committed entries in multiple threads | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. maybe we should consider quiescent raft node There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This may not be started till next year. |
||
|
||
## Engine | ||
- [ ] Titan - Separate large key-values from LSM-Tree | ||
- [ ] Pluggable Engine Interface - Clean up the engine wrapper code and provide more extendibility | ||
|
||
## Transaction | ||
- [x] Optimize transaction conflicts | ||
- [ ] Distributed GC - Distribute MVCC garbage collection control to TiKV | ||
|
||
## Coprocessor | ||
- [x] Streaming - Cut large data set into small chunks to optimize memory consumption | ||
- [ ] Chunk Execution - Process data in chunk to improve performance | ||
- [ ] Request Tracing - Provide per-request execution details | ||
|
||
## Tools | ||
- [x] TiKV Importer - Speed up data importing by SST file ingestion | ||
|
||
## Client | ||
- [ ] TiKV client (Rust crate) | ||
- [ ] Batch gRPC Message - Reduce message overhead | ||
- [ ] Flow Control - Do flow control in scheduler to avoid write stall in advance | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. seems that is not belong to client There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. How about putting it to a Storage section? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. great There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. great |
||
|
||
## PD | ||
- [ ] Optimize Region metadata - Save Region metadata in detached storage engine |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why remove this? I do have a work for that
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well, then you give me some brief about that.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Flow Control - Do flow control in scheduler to avoid write stall in advance