-
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
Merged
Merged
Changes from all commits
Commits
Show all changes
4 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -7,27 +7,38 @@ 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 | ||
|
||
## Storage | ||
- [ ] Flow Control - Do flow control in scheduler to avoid write stall in advance | ||
|
||
## 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 | ||
|
||
## PD | ||
- [ ] Optimize Region metadata - Save Region metadata in detached storage engine |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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