bexhoma.collectors.dbmsbenchmarker module
Collector for DBMSBenchmarker experiments.
Provides map_index_to_queryname() and DbmsBenchmarkerCollector, which
extends CollectorBase with query-level aggregation methods for warnings,
errors, and execution latencies across multiple experiment codes.
Authors: Patrick K. Erdelt Copyright (C) 2020 Patrick K. Erdelt SPDX-License-Identifier: AGPL-3.0-or-later See LICENSE for details.
- class bexhoma.collectors.dbmsbenchmarker.DbmsBenchmarkerCollector(path, codes, benchmark_run: int = 0)
Bases:
CollectorBaseCollector for DBMSBenchmarker experiments.
Extends
CollectorBasewith query-level aggregation methods for warnings, errors, and latencies. Overridesget_evaluator()to return aevaluators.dbmsbenchmarkerinstance.- get_evaluator(code='')
Returns a
evaluators.dbmsbenchmarkerinstance for the given experiment code.- Parameters:
code (str) – Experiment identifier. Defaults to the first code in
self.codes.- Returns:
DBMSBenchmarker evaluator for the specified experiment.
- Return type:
evaluators.dbmsbenchmarker
- get_query_latencies(query_titles=False)
Aggregates query latency metrics across all experiment codes.
For each code, retrieves the per-query latency DataFrame from the evaluator and prefixes its index with the experiment code before concatenating.
- Parameters:
query_titles (bool) – If
True, use human-readable query titles as index labels.- Returns:
A combined DataFrame of query latencies for all experiments.
- Return type:
pandas.DataFrame
- get_total_errors(query_titles=False)
Aggregates error counts (failed queries) across all experiment codes.
For each code, retrieves the per-query error DataFrame from the evaluator and prefixes its index with the experiment code before concatenating.
Note
The current implementation delegates to
evaluation.get_total_warnings.- Parameters:
query_titles (bool) – If
True, use human-readable query titles as index labels.- Returns:
A combined DataFrame of error counts for all experiments.
- Return type:
pandas.DataFrame
- get_total_warnings(query_titles=False)
Aggregates warning counts (result mismatches) across all experiment codes.
For each code, retrieves the per-query warning DataFrame from the evaluator and prefixes its index with the experiment code before concatenating.
- Parameters:
query_titles (bool) – If
True, use human-readable query titles as index labels.- Returns:
A combined DataFrame of warning counts for all experiments.
- Return type:
pandas.DataFrame
- bexhoma.collectors.dbmsbenchmarker.map_index_to_queryname(numQuery)
Maps a query index string (e.g.,
'q1') to a human-readable title from the globalquery_propertiesdictionary.If the title cannot be resolved, the original input string is returned unchanged.