This repository was archived by the owner on Jul 24, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 100
This repository was archived by the owner on Jul 24, 2024. It is now read-only.
RawKV Backup & Restore Project #86
Copy link
Copy link
Open
Labels
challenge-program-2difficulty/3-hardHard issueHard issuepriority/P2Medium priority issueMedium priority issue
Description
RawKV Backup & Restore Project
Abstract
In this project we needs focus on TiKV and BR project. and we need to
- Implement Raw KV backup and restore based on current BR project.
Problem Statement
For now TiKV is an independent CNCF project, the ability of backup and restore data is become more important, so we need to implement backup and restore data in TiKV with BR.
Raw KV is a concept of TiKV and irrelevant with tidb, current BR already support backup Txn KV from TiDB TiKV cluster and restore Txn KV data to new cluster.
we can reuse above process to implement Raw KV backup and restore, so the main process can be divided into two section.
Backup:
- Use BR Backup Command to send backup request to TiKV cluster.
- TiKV receive backup request then start to backup Raw KV, then put data into specify storage(local storage for now).
Restore:
- Use BR Restore Command to send restore request to TiKV cluster.
- TiKV restore data from specify storage.
Success Criteria
- With BR program, one can backup Raw KV from exist TiKV cluster, and restore to new TiKV cluster successfully.
TODO list
- TiKV use RegionIterator to scan Raw KV by given key range. (500 points / medium) detail
- TiKV restore raw kv depends on current TiKV restore logic. (500 points / medium) detail
- BR support communicate with only TiKV cluster. (300 points / medium)
- BR support restore Raw KV command. (500 points / medium)
- BR support backup Raw KV command. (500 points / medium)
Difficulty
- Easy
Score
- 2300
Mentor(s)
Recommended skills
- Go language
- Basic understanding of TiKV
References
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
challenge-program-2difficulty/3-hardHard issueHard issuepriority/P2Medium priority issueMedium priority issue