返回介绍

3.4 数仓基准~TPC-H

发布于 2024-10-03 15:40:36 字数 6434 浏览 0 评论 0 收藏 0

TPC

事务处理性能委员会( Transaction ProcessingPerformance Council ),是由数 10 家会员公司创建的非盈利组织,总部设在美国。该组织对全世界开放,但迄今为止,绝大多数会员都是美、日、西欧的大公司。TPC 的成员主要是 计算机软硬件厂家,而非计算机用户,它的功能是制定商务应用基准程序(Benchmark)的标准规范、性能和价格度量,并管理测试结果的发布。

TPC 不给出基准程序的代码,而只给出基准程序的标准规范(Standard Specification)。任何厂家或其它测试者都可以根据规范,最优地构造出自己的系统(测试平台和测试程序)。(需要自己写测试工具,测试完之后 提交给TPC协会)为保证测试结果的客观性,被测试者(通常是厂家)必须提交给 TPC 一套完整的报告(FullDisclosure Report),包括被测系统的详细配置、分类价格和包含五年维护费用在内的总价格。该报告必须由 TPC 授权的审核员核实(TPC 本身并不做审计),现在 全球只有不到十个审核员,全部在美国。

TPC-H

TPC-H 的目的

TPC-H 主要目的是评价特定查询的决策支持能力,强调服务器在数据挖掘、分析处理方面的能力。查询是决策支持 应用的最主要应用之一,数据仓库中的复杂查询可以分成两种类型:一种是预先知道的查询,如定期的业务报表;另一种则是事先未知的查询,称为动态查询 (Ad- Hoc Query)。

通俗的讲,TPC-H 就是当一家数据库开发商开发了一个新的数据库操作系统,采用 TPC-H 作为测试基准,来测试衡量数据库操作系统查询决策支持方面的能力.

TPC-H 的衡量指标

它模拟决策支持系统中的数据库操作,测试数据库系统复杂查询的响应时间,以每小时执行的查询数(TPC-H QphH@Siz) 作为度量指标.

TPC-H 标准规范

TPC- H 标准规范由 10 章正文和 5 个附录组成。

数据库运行的环境条件

TPC- H 测试模型为数据库服务器连续 7×24 小时工作,可能只有 1 次/月的维护;多用户并发执行复杂的动态查询,同时有并发执行表修改操作。数据库模型见图 1,共有 8 张表,除 Nation 和 Region 表外,其它表与测试的数据量有关,即比例因 SF(Scale Factor)

数据库关系图以及表各个字段定义如下图

image-20191211215558677

图 14 TPC-H 的数据表关联图

image-20191211215654806

图 15 TPC-H 的数据库模型

由于数据量的大小对查询速度有直接的影响,TPC- H 标准对数据库系统中的数据量有严格、明确的规定。用 SF 描述数据量,1SF 对应 1 GB 单位,SF 由低到高依次是 1、10、30、100、300、1 000、3 000、10 000。需要强调,SF 规定的数据量只是 8 个基本表的数据量,不包括索引和临时表。

从 TPC- H 测试全程来看,需要的数据存储空较大,一般包括有基本表、索引、临时表、数据文件和备份文件,基本表的大小为 x;索引和临时空间的经验值为 3-5 位,取上限 5x;DBGEN 产生的数据文件的大小为 x;备份文件大小为 x;总计需要的存储空间为 8x。就是说 SF=1,需要准备 8 倍,即 8 GB 存储空间,才能顺利地进行测试

测试语句:22 个查询,2 个更新

3 个测试

TPC-H 测试分解为 3 个子测试:数据装载测试、Power 测试和 Throughput 测试。

建立测试数据库的过程被称为装载数据,装载测试是为测试 DBMS 装载数据的能力。装载测试是第一项测试,测试装载数据的时间,这项操作非常耗时。Power 测试是在数据装载测试完成后,数据库处于初始状态,未进行其它任何操作,特别是缓冲区还没有被测试数据库的数据,被称为 raw 查询。

Power 测试要求 22 个查询顺序执行 1 遍,同时执行一对 RF1 和 RF2 操作。最后进行 Throughput 测试,也是最核心和最复杂的测试,它更接近于实际应用环境,与 Power 测试比对 SUT 系统的压力有非常大的增加,有多个查询语句组,同时有一对 RF1 和 RF2 更新流。

度量指标

​测试中测量的基础数据都与执行时间有关,这些时间又可分为:装载数据的每一步操作时间、每个查询执行时间和每个更新操作执行时间,由这些时间可计 算出:数据装载时间、Power@Size、Throughput@Size、QphH@Size 和$/QphH@Size。

TPC 基准列表

TPC 目前推出的基准程序

TPC 推出过许多基准程序,目前 11 套活跃基准程序,5 套不被业界接受而放弃(分别是 TPC-A、TPC-B、TPC-D、TPC-R、TPC-W 和 TPC- App)。

表格 7 TPC Active Benchmarks

Benchmar/ Document当前版本目的SpecificationSource Code
TPC-C5.11.0测试数据库系统的事务处理能力。pdfn/a
TPC-DI1.1.0 pdfTPC-DI_Tools_v1.1.0.zip
TPC-DS2.9.0 pdfTPC-DS_Tools_v2.9.0.zip
TPC-E1.14.0 pdfTPC-E_Tools_v1.14.0.zip
TPC-H2.17.3评价特定查询的决策支持能力,强调服务器在数据挖掘、分析处理方面的能力。pdfTPC-H_Tools_v2.17.3.zip
TPC-VMS1.2.0 pdfn/a
TPCX-BB1.2.0 pdfTPCX-BB_Tools_v1.2.0.zip
TPCX-HCI1.1.3 pdfTPCx-HCI_Benchmarking_Kit_v1.1.3.zip
TPCX-HS2.0.3 pdfTPCX-HS_Tools_v2.0.3.zip
TPCX-IOT1.0.3 pdfTPCx-IoT_Tools_v1.0.3.zip
TPCX-V2.1.3 pdfTPCx-V_Benchmarking_Kit_v2.1.3.zip

备注:数据时间截止至 2018-9-8.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文