博主历时三年精心创作的《大数据平台架构与原型实现:数据中台建设实战》一书现已由知名IT图书品牌电子工业出版社博文视点出版发行,点击《重磅推荐:建大数据平台太难了!给我发个工程原型吧!》了解图书详情,京东购书链接:https://item.jd.com/12677623.html,扫描左侧二维码进入京东手机购书页面。 |
简要概述:
TPC-C是测试关系型数据库的,TPC-H、TPC-DS和SSB都是测试分析型数据库/数据仓库的,TPC-H没有星型/雪花模型,已不推荐,TPC-DS最为主流,SSB支持星型模型,是从TPC-H演化而来,比TPC-DS表少,schema更简单清爽。
TPC是一个非盈利组织,致力于定义事务处理和数据库benchmark,其提供了面向不同应用场景的多种Benchmark: https://www.tpc.org/information/benchmarks5.asp 下图是对几个主要的benchmark的汇总:
接下来,我们着重介绍一上最广泛讨论的四种Benchmark.
面向OLTP的测试,也就是测试关系型数据库的数据集。
面向OLAP的测试,但是其Schema中没有星型模型和雪花模型,已不能准确反应当今分析型数据库/数据仓库的性能,TPC-DS是其新的发展版本”。
TPC-H是一款面向商品零售业的决策支持系统测试基准,它定义了8张表,22个查询,遵循SQL92;TPC-H基准的数据库模式遵循第三范式。新兴的数据仓库开始采用新的模型,如星型模型、雪花模型。TPC-H已经不能精准反映当今数据库系统的真实性能。为此,TPC组织推出了新一代的面向决策应用的TPC-DS 基准。下图是TPC-H的Schema:
从TPC-H的Schema上我们也能看出:它确实不是根据数仓建模理论设计的,没有星型模型或雪花模型的结构在里面,所以不再是测试OLAP数据库首选的测试基准。
面向OLAP的测试,也就是测试分析型数据库/数据仓库的数据集,业务场景是通用的“库存和销售”场景,业务场景要比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张事实表:
Type | Name | Abbreviation |
---|---|---|
Fact | Store Sales | SS |
Fact | Store Returns | SR |
Fact | Catalog Sales | CS |
Fact | Catalog Returns | CR |
Fact | Web Sales | WS |
Fact | Web Returns | WR |
Fact | Inventory | INV |
以下是18张维度表:
Type | Name | Abbreviation |
---|---|---|
Dimension | Store | S |
Dimension | Call Center | CC |
Dimension | Catalog Page | CP |
Dimension | Web Site | WEB |
Dimension | Web Page | WP |
Dimension | Warehouse | W |
Dimension | Customer | C |
Dimension | Customer Address | CA |
Dimension | Customer Demographics | CD |
Dimension | Date Dim | D |
Dimension | Household Demographics | D |
Dimension | Item | I |
Dimension | Income Band | IB |
Dimension | Promotion | P |
Dimension | Reason | R |
Dimension | Ship Mode | SM |
Dimension | Time Dim | T |
Dimension | dsdgen_version | NA |
下图仅给出Store_Sales
和Store_Returns
两张事实表的Schema作为参考。
对于7个事实表构成的雪花模型或星型模型的Schema,请参考:https://datacadamia.com/data/type/relation/benchmark/tpcds/schema。
面向OLAP测试,也就是测试分析型数据库/数据仓库的数据集,业务场景是“商品零售业”。
注意: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