Skip to main content
TPC-H 运行在 data-warehouse 域的 duckdb-local 参考平台上(无 provider 的单机引擎,是 tpc-ds 套件的兄弟)。通过 params.mode 选择两种模式:
  • reference(默认)—— 单流跑一遍 22 条查询,对每个结果取摘要,产出 queries.json + summary.json。便宜的 CI/离线路径,由 official-tpch-evaluator 评分。
  • official —— 完整官方全流程(Load → Power 含 RF1/RF2 → 多流 Throughput → ACID), 产出 official.json,由 official-tpch-qphh-evaluator 算出官方 QphH@Size 复合分。
官方模式的数字复现官方 TPC-H 公式,但未经审计:无 TPC 会员、无审计、无带报价的完整披露报告。 RF1/RF2 刷新集由 clousight 生成。每个分数都会在 notes 里注明。

运行参考模式(无需云账号)

运行官方模式(QphH@Size)

官方模式需显式选择其 evaluator(两个 evaluator 都支持 tpc-h,默认选参考那个):

规模放大

params.scale_factor 决定数据规模(QphH 按 @Size 报告),params.streams 决定并发 Throughput 查询流数,默认取该 scale factor 的官方最小值(SF1 → 2、SF10 → 3、SF30 → 4、 SF100 → 5、…)。三个复合分都随 SF 线性放大,Throughput@Size 随流数增长。 查询流排列由 params.query_order 决定:
official 在请求流数超过内置 Appendix A 表覆盖时直接报错,绝不静默替换成非官方排列。 用 query_order: generated 突破 S = 2(每个流仍跑全部 22 条查询,故吞吐指标正确;只有与已发布 结果的严格可比才需要精确的 Appendix A 序列)。所选排列会记入 official.json 的 ordering_source, 并折入本次运行的 dataset digest。

官方模式测量的维度

official-tpch-qphh-evaluator 产出这些 tpc-h.* 测量: 官方模式不做正确性声明:Power 测试的查询跑在 RF1 刷新数据之后,结果与 pristine 数据参考天然不同——硬比会把正确行为误判为失败。正确性(对官方答案已验证) 归 reference 模式。 ACID Durability 报为 n/a(嵌入式 DuckDB 无崩溃/恢复夹具),故不进入测量集。ACID 是独立的 pass/fail 门,不参与 QphH@Size 复合分。 所有测量都带 official=True —— 这是一个溯源标记(“由套件公认的 evaluator 产出”),并非审计声明; 是否会漂移由 reproducibility_class 承载。

正确性:官方答案已验证

SF 1、0.1、0.01 三份 pinned 参考在捕获时均与 DuckDB 官方 tpch_answers() 答案集逐单元验证(22 条全过;数值按共享的 2 位小数舍入、行序无关)——这些 SF 下的 queries_passed 会在 notes 中注明。其它 SF 在你捕获参考前不做正确性 声明(scripts/capture_tpch_reference.py --sf <sf>);仍非经审计的 TPC 结果。

性价比(price/QphH)

通过定价 feed 提供你的系统报价,pricing enricher 即产出官方风格的性价比复合数 (unaudited——报价是你自己的输入,例如 3 年 TCO 或包月价):
记录中的 tpc-h.qphh_at_size 匹配(以及可选的 provider/region 过滤)后,记录获得 extensions.pricing.price_performance[],其中 price_per_unit_perf = price / QphH。 内置种子 feed 不含任何系统报价——性价比数字绝不来自发明的数据,且永远改变不了 判定(enricher 契约上只做叠加)。

暂不在范围内

真实 SUT 的 config-connect 引擎(目前仅 duckdb-local)、以及把官方 Appendix A 排列表扩展到 streams 0–2 以外(在此之前用 query_order: generated 放大)。很大的 scale factor 受单机 DuckDB 内存/磁盘限制。嵌入式 DuckDB 不测 Durability 崩溃恢复。