TPC-C TPC-HTPC-DS和SSB测试基准(Benchmark)介绍

Posted bluishglc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TPC-C TPC-HTPC-DS和SSB测试基准(Benchmark)介绍相关的知识,希望对你有一定的参考价值。

文章目录

TPC是一个非盈利组织,致力于定义事务处理和数据库benchmark,其提供了面向不同应用场景的多种Benchmark: https://www.tpc.org/information/benchmarks5.asp 下图是对几个主要的benchmark的汇总:

接下来,我们着重介绍一上最广泛讨论的四种Benchmark.

1. TPC-C

面向OLTP测试,也就是测试关系型数据库的数据集。

2. TPC-H

面向OLTP测试,也就是测试分析型数据库/数据仓库的数据集,业务场景是“商品零售业”。

TPC-H是一款面向商品零售业的决策支持系统测试基准,它定义了8张表,22个查询,遵循SQL92;TPC-H基准的数据库模式遵循第三范式。新兴的数据仓库开始采用新的模型,如星型模型、雪花模型。TPC-H已经不能精准反映当今数据库系统的真实性能。为此,TPC组织推出了新一代的面向决策应用的TPC-DS 基准。下图是TPC-H的Schema:


从TPC-H的Schema上我们也能看出:它确实不是根据数仓建模理论设计的,没有星型模型或雪花模型的结构在里面,所以不再是测试OLAP数据库首选的测试基准。

3. TPC-DS

面向OLTP测试,也就是测试分析型数据库/数据仓库的数据集,业务场景是通用的“库存和销售”场景,业务场景要比TPC-H和SSB都大,所以数据表会多出很多。

TPC-DS采用星型、雪花型等多维数据模式。它包含7张事实表,18张纬度表平均每张表含有18列。其工作负载包含99个SQL查询,覆盖SQL99和2003的核心部分以及OLAP。这个测试集包含对大数据集的统计、报表生成、联机查询、数据挖掘等复杂应用,测试用的数据和值是有倾斜的,与真实数据一致。可以说TPC-DS是与真实场景非常接近的一个测试集,也是难度较大的一个测试集。

TPC-DS的这个特点跟大数据的分析挖掘应用非常类似。Hadoop等大数据分析技术也是对海量数据进行大规模的数据分析和深度挖掘,也包含交互式联机查询和统计报表类应用,同时大数据的数据质量也较低,数据分布是真实而不均匀的。因此TPC-DS成为客观衡量多个不同Hadoop版本以及SQL on Hadoop技术的最佳测试集。

TPC-DS涉及的数据表非常多,我们先梳理一下它的维表和事实表的情况:

以下是7张事实表:

TypeNameAbbreviation
FactStore SalesSS
FactStore ReturnsSR
FactCatalog SalesCS
FactCatalog ReturnsCR
FactWeb SalesWS
FactWeb ReturnsWR
FactInventoryINV

以下是18张维度表:

TypeNameAbbreviation
DimensionStoreS
DimensionCall CenterCC
DimensionCatalog PageCP
DimensionWeb SiteWEB
DimensionWeb PageWP
DimensionWarehouseW
DimensionCustomerC
DimensionCustomer AddressCA
DimensionCustomer DemographicsCD
DimensionDate DimD
DimensionHousehold DemographicsD
DimensionItemI
DimensionIncome BandIB
DimensionPromotionP
DimensionReasonR
DimensionShip ModeSM
DimensionTime DimT
Dimensiondsdgen_versionNA

以下是事实表和维度表的汇总:

下图仅给出Store_SalesStore_Returns两张事实表的Schema作为参考。

对于7个事实表构成的雪花模型或星型模型的Schema,请参考:https://datacadamia.com/data/type/relation/benchmark/tpcds/schema

4. SSB

面向OLTP测试,也就是测试分析型数据库/数据仓库的数据集,业务场景是“商品零售业”(与TPC-H同源)。

SSB是从TPC-H演变过来的,它们都是围绕同一个业务场景:即商品零售业的决策分析设计的,它的Schema包含一张事实表订单lineorder和四张维表:消费者customer, 供应商supplier, 零件part, 日期date,构成了一个典型的星型模式。下图是SSB的Schema:


参考:

https://www.cnblogs.com/barneywill/p/10471289.html

https://zhuanlan.zhihu.com/p/339886289

https://datacadamia.com/data/type/relation/benchmark/tpcds/schema

以上是关于TPC-C TPC-HTPC-DS和SSB测试基准(Benchmark)介绍的主要内容,如果未能解决你的问题,请参考以下文章

如何在 SQL Server 中创建星型模式基准 (SSB)

破记录!国产数据库KunDB 单节点TPC-C事务性能超180万tpmC

TPC-C

tpcc-mysql   mysql基准测试工具使用文档

使用benchmarkSQL测试数据库的TPCC

OceanBase 二次 TPC-C 测试性能提升 10 倍