title: Summary Report Format parent: Reference nav_order: 40

Summary Report Format

Apache Solr Orbit saves results in JSON and CSV format to ~/.solr-orbit/benchmarks/test-runs/<run-id>/.

JSON format

The results.json file contains an array of metric objects, one per recorded metric per task:

[
  {
    "task": "bulk-index",
    "operation": "bulk-index",
    "throughput": {
      "mean": 4500.0,
      "unit": "docs/s"
    },
    "latency": {
      "50": 12.3,
      "90": 18.7,
      "99": 25.1,
      "99.9": 32.4,
      "unit": "ms"
    },
    "error_rate": 0.0,
    "duration": 120.5
  },
  {
    "task": "search",
    "operation": "search",
    "throughput": {
      "mean": 120.0,
      "unit": "ops/s"
    },
    "latency": {
      "50": 5.1,
      "90": 9.3,
      "99": 15.2,
      "99.9": 22.8,
      "unit": "ms"
    },
    "error_rate": 0.0,
    "duration": 20.1
  }
]

CSV format

The results.csv file contains the same data in tabular form, with one row per metric per task. Column names match the JSON field names.

Run metadata

Each run also produces a test_run.json file alongside the results:

{
  "test_run_id": "20240115T120000Z",
  "workload": "nyc_taxis",
  "test_procedure": "append-no-conflicts",
  "pipeline": "benchmark-only",
  "target_hosts": ["localhost:8983"],
  "start_time": "2024-01-15T12:00:00Z",
  "end_time": "2024-01-15T12:05:00Z",
  "solr_version": "9.10.1"
}

Metric definitions

FieldDescription
taskName of the schedule step
operationOperation type (e.g., bulk-index, search)
throughput.meanMean throughput over the measurement period
throughput.unitdocs/s for indexing, ops/s for queries
latency.50latency.99.9Latency percentiles in milliseconds
error_rateFraction of operations that returned an error (0.0 to 1.0)
durationTotal task duration in seconds