Skip to content
This repository has been archived by the owner on Jul 24, 2024. It is now read-only.

RawKV Backup & Restore Project #86

Open
2 of 5 tasks
3pointer opened this issue Dec 6, 2019 · 3 comments
Open
2 of 5 tasks

RawKV Backup & Restore Project #86

3pointer opened this issue Dec 6, 2019 · 3 comments
Labels

Comments

@3pointer
Copy link
Collaborator

3pointer commented Dec 6, 2019

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

@youjiali1995
Copy link

I want to join in this task~

1 similar comment
@breezewish
Copy link
Member

I want to join in this task~

@IANTHEREAL
Copy link
Collaborator

@3pointer any documents about it?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

6 participants