TPC-DS标准规范(3)

TPC-DS是一套决策支持系统测试基准,主要针对零售行业。提供99个SQL查询(SQL99或2003),分析数据量大,测试数据与实际商业数据高度相似,同时具有各种业务模型(分析报告型,数据挖掘型等等)。国内目前相关的翻译文章较少。本文尝试对官网的TPC BENCHMARK DS Standard Specification(下称“原文”)进行翻译。翻译主要参照的是2017年发布的2.6.0版本。

由于原文一共137页,本文在翻译的时候会进行一定的压缩,突出较为关键的信息。本文章节名称,序号,小标题等均严格按照原文翻译排序。

3 数据库填充及标度

本节定义了数据库的填充及如何定义标度

3.1 标度模型

3.1.1 基于dsdgen生成的原始数据的大致尺寸,TPC-DS基准定义了一组离散标度点(“标度因子”)。实际字节计数可能会因个别硬件和软件平台而异。

3.1.2 TPC-DS的标度因子是:1TB,3TB,10TB,30TB,以及100TB。1TB=2^40个字节。进行有效性能测试的测试数据库目前最大为100TB,TPC之后可能会超越这一限制。

3.1.3 每个定义的标度因子都有一个相关的SF值,这是一个无单位的数量,大致相当于数据仓库中存在的数据的千兆字节数。标度因子及SF值的关系如3-1表所示:

3.1.4 提供的标度因子都可以选择使用,没提供的都不能用。

3.1.5 不同数据量下的计算难度不同,因此使用不同的标度因子,其结果之间无法进行比较。

3.2 测试数据库标度

3.2.1 测试数据库是用于进行数据库的负载测试和性能测试的数据库(见第7.4节)。

3.2.2 每个标度因子和测试数据库中的每个表的行数见3-2表中的数据库行数。

3.2.3 行的大小是估算出来的,并且可能会因为数据库不同导致基准间的行信息不同,该数据仅仅作为实现基准的一种参考。

3.3 资格数据库标度

3.3.1 资格数据库(qualification database)是用于查询验证测试的数据库(见第7.3节)。

3.3.2 在性能测试中,针对资格数据库和测试数据库的验证查询,测试出的性能应该一致。因此,资格数据库在几乎每个方面(大小除外)必须与测试数据库相同,包括但不限于:

a) 列定义

b) 数据生成和加载的方法(不是平行程度)

c) 统计聚集方法

d) 数据可访问性的实现

e) 分区类型(不是分区程度)

f) 复制

g) 表的类型(如果表的类型可以选择的话)

h) EADS(比如索引)

3.3.3 资格数据库与测试数据库在每个方面都要相同,除非两者差别与标度的差异直接相关。例如,如果测试数据库使用水平分区(见2.5.3.7),则资格数据库也必须采用水平分区,尽管每种情况下分区数可能不同。同时,资格数据库可以被配置为CPU,存储器和磁盘的子集。如果资格数据库与测试数据库配置不同,则必须将差异标注出来。

3.3.4 资格数据库必须使用dsdgen以及1GB的标度因子。

3.3.5 资格数据库的行数在第3.2节中定义。

3.4 数据库填充与dsdgen

3.4.1 测试数据库和资格数据库必须使用TPC-DS数据生成器dsdgen生成的数据填充,并且dsdgen的主版本号和次版本号必须与TPC-DS规范的版本号相匹配。dsdgen的源代码可以下载(参见附录F)。

3.4.2 dsdgen生成的数据旨在符合表3-2和5-2的要求,如果表与dsdgen生成的数据不同,则以表3-2和5-2为准。

3.4.3 供应商可以修改初始数据库填充部分以及数据维护部分的dsdgen代码,但是结果数据必须符合以下要求:

a) 各列内容必须与dsdgen生成的列一致。

b) 各列数据格式必须与dsdgen生成的列的数据格式一致。

c) 为标度因子生成的行数,必须与表3-2和5-2中指定的行数相同。

如果使用了dsdgen修改后的版本,必须将修改后的源代码全部公开。此外,审核员必须验证所公开的修改后的源代码与基准执行中使用的数据生成程序相匹配。

3.4.4 如果修改仅限于源代码的一部分,则供应商可能只会公开修改源代码。

3.5 数据验证

在数据库初始加载之后,以及任何性能测试之前,要对测试数据库的数据内容的正确性进行验证。使用dsdgen的“-validate”和“-vcount”选项生成验证数据集。“-vcount”的最小值为50,为大多数表生成50行验证数据。但是,“returns”事实表,平均每个表只有5行,其维度表的总行数也少于50行。验证数据集必须全部出现在测试数据库中。

  • 23
    点赞
  • 168
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值