Skip to content

Commit

Permalink
roadmap: update TiKV roadmap
Browse files Browse the repository at this point in the history
  • Loading branch information
lilin90 committed Oct 8, 2018
1 parent 0781f03 commit d7c10d8
Showing 1 changed file with 40 additions and 23 deletions.
63 changes: 40 additions & 23 deletions ROADMAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,28 +39,45 @@ This document defines the roadmap for TiDB development.

## TiKV:

- [ ] 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
### 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

### 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:

Expand All @@ -69,7 +86,7 @@ This document defines the roadmap for TiDB development.
- [x] Decentralize scheduling table Regions
- [x] Scheduler supports prioritization to be more controllable
- [ ] Use machine learning to optimize scheduling
- [ ] Cluster Simulator
- [ ] Optimize Region metadata - Save Region metadata in detached storage engine

## TiSpark:

Expand Down

0 comments on commit d7c10d8

Please sign in to comment.