Skip to content

Configuration File Examples

Steve Burnett edited this page Feb 25, 2026 · 1 revision

Use these examples to build your own configuration files.

Run a specific query file

Create my_run.json next to the benchmarks/ directory:

{
  "catalog": "hive",
  "schema": "my_schema",
  "query_files": ["benchmarks/tpc-ds/queries/query_08.sql"]
}

Then run:

./pbench run \
  --server https://my-server-host.example.com:8443 \
  --user myuser --password mypassword \
  my_run.json

Run an inline SQL query

{
  "catalog": "hive",
  "schema": "my_schema",
  "queries": ["SELECT count(*) FROM store_sales"]
}

Override the schema from an existing config

If sf1.json uses the wrong schema name for your setup, create your own:

{
  "description": "My TPC-DS schema at SF1",
  "catalog": "iceberg_data",
  "schema": "tpcds_1gb"
}

Pass it instead of benchmarks/tpc-ds/sf1.json.

Run 1 random query

Change randomly_execute_until to "1" in a copy of ds_rand5.json, or create:

{
  "random_execution": true,
  "randomly_execute_until": "1",
  "query_files": [
    "benchmarks/tpc-ds/queries/query_01.sql",
    "benchmarks/tpc-ds/queries/query_02.sql"
  ]
}

Run for a fixed duration

{
  "random_execution": true,
  "randomly_execute_until": "30m",
  "query_files": ["..."]
}

Multiple cold and warm runs

{
  "cold_runs": 1,
  "warm_runs": 3
}

Pass this as a config file alongside the query config.

Clone this wiki locally