interviewpath
  • 0day streak
  • 10total XP
  • Level 1
0/5

Unit 14 · Database research · Lesson 4 of 5

Database workload evaluation

Research claims about databases are only as good as the workloads and measurements behind them. This topic covers choosing or constructing workloads for a research question, the properties of real workloads that benchmarks miss, how to report results, and how to read published evaluations critically.
About 4 hFocus mode

Step 1: Learn the ideas

  • From research question to workload: hypotheses and controls
  • Synthetic, real and trace-derived workloads
  • What standard benchmarks capture and omit: TPC-C, TPC-H, TPC-DS, YCSB, JOB
  • Skew, correlation and contention as experimental variables
  • Baseline selection and tuning parity
  • Measurement: steady state, warm-up, percentiles, variability
  • Sensitivity analysis and regime maps
  • Artifacts and reproducibility practice

Why it matters

Many database papers report large speedups that shrink or reverse under a different workload. Reviewers and research supervisors look first at the evaluation: does the workload exercise the claimed mechanism, are baselines tuned, and do conclusions hold across the regimes that matter? Being able to plan such an evaluation, and to critique one, is central to a database research internship or thesis.

Core ideas

From hypothesis to workload. A claim like "our protocol scales better under contention" names its variable: contention. The workload must sweep it (for example the Zipf parameter or the number of hot rows) while holding other factors fixed, and should include a regime where the claim is not expected to hold, as a sanity check. Avoid setups where an unrelated bottleneck, such as the client, the network or logging, decides the result.

What standard benchmarks capture and miss. TPC-C has realistic transaction mixes and contention on a few rows, but fixed access patterns and scaling rules. TPC-H has well-understood analytical queries, but data with little skew or correlation. YCSB isolates key-value operations with tunable distributions but has no multi-key transactions. JOB brings real correlations for join ordering but is read-only and uses one dataset. Choose benchmarks by the mechanism under test, and add a real or trace-derived workload when external validity matters.

Parameters that flip conclusions. Concurrency-control rankings change with contention and with the share of multi-partition transactions; storage-engine rankings change with read/write ratio, value size and whether data fits in memory; optimizer results change with correlations and physical design. Published evaluations such as Yu et al. on many-core concurrency control and Harding et al. on distributed protocols show these crossovers, which is exactly what a regime map should report.

Baselines and fairness. Compare against the strongest relevant baseline, configured with comparable effort, at the same durability and isolation guarantees. Implementing all contenders in one framework, as several concurrency-control studies do, makes comparisons fairer, but the results then describe the framework rather than production systems.

Measurement and reporting. Run to steady state, repeat, and report distributions (median and tail, with spread across runs). State hardware, versions, configuration and generator seeds. Check correctness on every run (invariants, result checksums). Publish scripts and raw data so a reader can regenerate a figure.

Common misconceptions

  • "A standard benchmark makes an evaluation valid." Validity depends on whether the benchmark exercises the claim; a standard suite can miss the relevant variable entirely.
  • "A large speedup on one workload is a general result." Without a sensitivity analysis it is one point in the parameter space.
  • "Synthetic workloads are worthless." They are the best tool for isolating a mechanism; complement them with realistic workloads rather than replacing them.
  • "Sharing code makes work reproducible." Reproduction also needs configurations, seeded generators, environment details and raw measurements.
  • "Matching default configurations is fair." Defaults encode different durability, memory and parallelism choices.

How to approach it

Take one published evaluation, for example Wu et al.'s MVCC study or the evaluation section of the Spanner paper, and write a one-page critique: question, workload, baselines, metrics, missing regimes. Then plan a small study of your own for a mechanism you care about, with a parameter sweep and a correctness check, and run a reduced version with pgbench, YCSB or BenchBase. In research interviews, use both as evidence of evaluation thinking and describe only what you actually ran.

Suggested order

  1. 1Reread Fair Benchmarking Considered Difficult and extend its checklist with research-specific items (hypothesis, regimes, baselines).
  2. 2Read the evaluation sections of Yu et al. and Harding et al. and draw, for each, the regime map implied by their results.
  3. 3Read the TPC-C, TPC-H and YCSB descriptions and write what each omits relative to a workload you know.
  4. 4Write the one-page critique of Wu et al. (the guided reading exercise).
  5. 5Plan and run a reduced sensitivity study with pgbench, YCSB or BenchBase, and package it as a reproducible artifact.

Step 2: Check off what you can do

Tap each one you can genuinely do or explain. Each earns 10 XP.

Step 3: Go deeper

  • Fair Benchmarking Considered Difficult: Common Pitfalls In Database Performance TestingStart here

    Hannes Mühleisen (author-hosted PDF)

    Pitfalls and a checklist that serve as the starting point for research-grade evaluations.

    Open(opens in a new tab)Link responded, 5 Oct 2026
  • An Evaluation of Distributed Concurrency ControlStart here

    PVLDB (VLDB Endowment)

    A model evaluation that compares protocols in one framework and shows conclusions changing with workload parameters.

    Open(opens in a new tab)Link responded, 5 Oct 2026
  • Transaction Processing Performance Council (TPC) benchmarks

    TPC

    Section: TPC-H

    Decision-support benchmark definition; note its data-generation assumptions when judging external validity.

    Open(opens in a new tab)Link responded, 5 Oct 2026
  • YCSB: Yahoo! Cloud Serving Benchmark

    GitHub (YCSB project)

    Parameterized key-value workloads for controlled sweeps of skew and read/write mix.

    Open(opens in a new tab)Link responded, 5 Oct 2026
  • BenchBase: multi-DBMS SQL benchmarking framework

    GitHub (CMU Database Group)

    A reproducible harness for running several OLTP workloads against relational databases.

    Open(opens in a new tab)Link responded, 5 Oct 2026

Step 4: Practice

Write the evaluation critique first, using your checklist. Then turn the skew and cache benchmark into a sensitivity study: pick one variable (Zipf parameter, client count or data size relative to memory), sweep at least five values with repetitions, and plot where behavior changes. Package scripts, configuration and raw results so that someone else could regenerate the plot.

Record attempts on each problem’s page (+15 XP, +10 more when solved on your own).

Step 5: Test yourself

Answer each one out loud or on paper before you finish the lesson.

  1. Question 1Which variable does your research question name, and how will the workload sweep it?
  2. Question 2What regime would falsify the claim, and is it in your evaluation?
  3. Question 3How do you ensure baselines are tuned with comparable effort?
  4. Question 4Why can implementing all protocols in one framework both help and limit an evaluation?
  5. Question 5What must a reader have in order to regenerate one of your figures?

You’re done when you can

  • Write a one-page critique of a database paper’s evaluation that identifies at least one missing regime and proposes an experiment.
  • Produce a regime map from a parameter sweep with repetitions and error bars.
  • Explain in under three minutes what TPC-C, TPC-H, YCSB and JOB each omit.
  • Publish (even privately) a reproducible package for one experiment: scripts, configuration, seeds and raw data.

Finish the lesson

How confident do you feel?

Lesson complete!

+50 XP

Reviews will come up on the Practice tab so it sticks.

Your notes and study time

Log study time