Skip to content
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

Design a fast TPCC test data generation tool: Generate TPCC SST data, then use br to complete a quick import #46

Open
kennytm opened this issue Feb 12, 2020 · 3 comments
Assignees

Comments

@kennytm
Copy link
Collaborator

kennytm commented Feb 12, 2020

Feature Request

Describe your feature request related problem:

We do not have a simple tool to generate large-scale example archives. For large-scale tests, we need to use dbgen to produce SQL dump and then use TiDB Lightning to import into the cluster. This is very time consuming — for 10T-scale test we need almost 2 days for this preparation step.

Describe the feature you'd like:

We should be able to directly generate the backup archive (create SSTs directly and populate the corresponding backupmeta).

Either we create a dedicated tool (focusing on a few selected schemas, e.g. sysbench or TPC-C), or extend dbgen to create SSTs (hard, since dbgen is schema-less and won't generate indices).

Describe alternatives you've considered:

Teachability, Documentation, Adoption, Migration Strategy:

@zhouqiang-cl
Copy link
Contributor

The step can be:

  1. Generate data
  2. convert to KV pairs via TiDB encoder (maybe hard coded )
  3. sort the index
  4. write out SSTs

We can use gorocksdb to write out SSTs. But in order to usingbr to restore it, we also need generate a backupmeta protobuf file

@zhouqiang-cl zhouqiang-cl changed the title Create a tool to generate archive for large-scale testing Design a fast TPCC test data generation tool: Generate TPCC SST data, then use br to complete a quick import Mar 12, 2020
@kennytm
Copy link
Collaborator Author

kennytm commented May 28, 2020

This should better be transferred to https://github.com/pingcap/go-tpc/ (but i've no permission 🙃)

@zhouqiang-cl
Copy link
Contributor

I have add you @kennytm !!! It is your show time now!!!

@kennytm kennytm transferred this issue from pingcap/br May 30, 2020
@yeya24 yeya24 removed their assignment Jun 4, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants