TPC-H测试(精简)
- 格式:pdf
- 大小:461.44 KB
- 文档页数:4
分布式数据库TPC-H测试(GREENPLUM)1、引言如今,多样的交易模式以及大众消费观念的改变使得数据库应用领域不断扩大,现代的大型分布式应用系统的数据膨胀也对数据库的海量数据处理能力和并行处理能力提出了更高的要求,如何在数据呈现海量扩张的同时提高处理速度和应用系统的可用性,使客户能同时得到更高的处理速度、更高的数据可用性和更大的数据集,是数据库系统面临的一个挑战。
通过TPC-H基准测试,可获得数据库单位时间内的性能处理能力,为评估数据库系统的现有性能服务水平提供有效依据,通过横向对比促进数据库系统的整体质量提升,能更好地在重大信息化工程中实现推广。
2、TPC-H原理简介TPC-H是由TPC(Transaction Processing Performance Council)事务处理性能委员会公布的一套针对数据库决策支持能力的测试基准,通过模拟数据库中与业务相关的复杂查询和并行的数据修改操作考察数据库的综合处理能力,获取数据库操作的响应时间和每小时执行的查询数指标(QphH@Size)。
TPC-H基准模型中定义了一个数据库模型,容量可以在1GB~10000GB的8个级别中进行选择。
数据库模型包括CUSTOMER、LINEITEM、NATION、ORDERS、PART、PARTSUPP、REGION和SUPPLIER 8张数据表,涉及22条复杂的select查询流语句和2条带有insert和delete程序段的更新流语句。
测试分为Power测试和Throughout测试两种类型,Power测试是随机执行22条查询流中的一条测试流和2条更新流中的一条测试流,考核指标为QppH@Size;Throughout测试执行的是多条查询流和一条更新流对数据库的混合操作,考核指标是QthH@Size,Power测试和Throughout测试通过数理方式合成的结果为TPC-H基准测试中最关键的一项指标:每小时数据库查询数(QphH@Size),是QppH@Size和QthH@Size结果的乘积的1/2次方。
关于TPC-H的一点理解前言:因为有同学问到TPC-H是什么,然后和该同学讨论了下以下将个人对TPC-H的一些理解和大家说说。
TPC-H和大家的考试没关系,也不强制需要去理解,完全没兴趣看下去的同学可以略过这份文档,这份文档仅当是一份知识交流。
另外,不保证理解正确性,仅个人理解O(∩_∩)O——by PearTPC,为Transaction Processing Performance Council的简称,中文为“事务处理性能委员会”,更多理解请google之,这里不深究在TPC提供的基准程序(benchmark)(你可以把基准理解成测量标准)里,有两个比较常用或是在日后你们比较常听到的两个基准,一个是TPC-C,另一个是TPC-H。
对于TPC-C和TPC-H,可以简单地理解成它是一个用于生成模拟商业数据的程序,就如以你们现在所学的数据库知识理解,TPC-C和TPC-H生成的数据其实就是一堆表,表里面有各种各样的数据。
(其实上面的理解还不算详细,详细的可以google之理解)对于TPC-H里面的表,可以查看/tpch/spec/tpch2.14.3.pdf这份文档的第12页,这些表构成了整个商业系统,可以通过去查看各个表名和属性名来理解这些表代表的是哪些实体集和关系集,以及了解表中有什么属性。
另外,TPC-C主要是用于“在线事务处理”(OLTP,On-Line Transaction Processing)研究分析,对于OLTP可以google之了解一下,这里不详细说。
TPC-H主要是用于“联机分析处理”(OLAP,On-Line Analysis Processing),对于OLAP的详细理解也可以google之,这里简单说说所谓的OLAP就是通过大数据来分析数据潜在的知识,就如说通过你过去一段长时间的购买记录能分析出你比较倾向常买哪样产品又或是能分析出在某类商品上你比较倾向的品牌,前段时间淘宝数据盛典/go/act/sale/tbsjsd.php?&ad_id=&am_id=&cm_id=&pm_i d=其实就是就是一个OLAP的结果。
数据库实验-1.TPC-H数据⽣成和导⼊⽬录1. TPC-H 数据⽣成和导⼊实验环境 PostgreSQL 12参数 ScaleFactor = 1G, QuerySeed = 20190909制作完成的数据和查询如下:链接: 提取码: q8sj1.1. ⽣成数据参考编辑dbgen/makefile.suite修改其中各部分如下CC = gccDATABASE = SQLSERVERMACHINE = LINUXWORKLOAD = TPCH$ #make clean$ make$ ./dbgen -s 1 -f # ScaleFactor=1(Gigabytes), Overwrite⽣成如下⽂件dss.ddl # 表定义dss.ri # 主键和外键定义# 数据customer.tbllineitem.tblnation.tblorders.tblpartsupp.tblpart.tblregion.tblsupplier.tbl数据处理sed -i 's/|$//g' `find *.tbl` # 去除末尾的 DELIMITER1.2. 导⼊数据先导⼊表定义,直接运⾏⼀遍dss.ddl\i /home/monkey/Research/DBAcc/TPCH/2.18.0_rc2/dbgen/dss.ddl再导⼊表数据chmod 777 *.tbl # 使 PostgreSQL 可以读⽂件copy nation from '/home/monkey/Research/DBAcc/TPCH/2.18.0_rc2/dbgen/nation.tbl' with DELIMITER as '|';copy part from '/home/monkey/Research/DBAcc/TPCH/2.18.0_rc2/dbgen/part.tbl' with DELIMITER as '|';copy region from '/home/monkey/Research/DBAcc/TPCH/2.18.0_rc2/dbgen/region.tbl' with DELIMITER as '|';copy partsupp from '/home/monkey/Research/DBAcc/TPCH/2.18.0_rc2/dbgen/partsupp.tbl' with DELIMITER as '|';copy customer from '/home/monkey/Research/DBAcc/TPCH/2.18.0_rc2/dbgen/customer.tbl' with DELIMITER as '|';copy supplier from '/home/monkey/Research/DBAcc/TPCH/2.18.0_rc2/dbgen/supplier.tbl' with DELIMITER as '|';copy lineitem from '/home/monkey/Research/DBAcc/TPCH/2.18.0_rc2/dbgen/lineitem.tbl' with DELIMITER as '|';copy orders from '/home/monkey/Research/DBAcc/TPCH/2.18.0_rc2/dbgen/orders.tbl' with DELIMITER as '|';另⼀种导⼊⽅法(上⾯⼀种没 work,下⾯这种可以):cat nation.tbl | psql -U tpch -d tpch -c "copy nation from stdin with DELIMITER as '|';"cat part.tbl | psql -U tpch -d tpch -c "copy part from stdin with DELIMITER as '|';"cat region.tbl | psql -U tpch -d tpch -c "copy region from stdin with DELIMITER as '|';"cat partsupp.tbl | psql -U tpch -d tpch -c "copy partsupp from stdin with DELIMITER as '|';" cat customer.tbl | psql -U tpch -d tpch -c "copy customer from stdin with DELIMITER as '|';" cat supplier.tbl | psql -U tpch -d tpch -c "copy supplier from stdin with DELIMITER as '|';" cat lineitem.tbl | psql -U tpch -d tpch -c "copy lineitem from stdin with DELIMITER as '|';" cat orders.tbl | psql -U tpch -d tpch -c "copy orders from stdin with DELIMITER as '|';" 1.3. 添加外键对dss.ri做相应修改如下,执⾏。
常见的服务器性能指标有哪些及简要介绍当前业界常见的服务器性能指标有:TPC-CTPC-ETPC-HSPECjbb2005SPECjEnterprise2010SPECint2006 及SPECint_rate_2006SPECfp2006 及SPECfp_rate_2006SAP SD 2-TierLINPACKRPE2一、TPC (Transaction Processing Performance Council) 即联机交易处理性能协会, 成立于1988年的非盈利组织,各主要软硬件供应商均参与,成立目标: 为业界提供可信的数据库及交易处理基准测试结果,当前发布主要基准测试为:TPC-C : 数据库在线查询(OLTP)交易性能 TPC-E : 数据库在线查询(OLTP)交易性能 TPC-H : 商业智能/ 数据仓库/ 在线分析(OLAP)交易性能1.TPC-C测试内容:数据库事务处理测试, 模拟一个批发商的订单管理系统。
实际衡量服务器及数据库软件处理在线查询交易处理(OLTP)的性能表现. 正规TPC-C 测试结果发布必须提供tpmC值, 即每分钟完成多少笔TPC-C 数据库交易(TPC-C Transaction Per Minute), 同时要提供性价比$/tpmC。
如果把TPC-C 测试结果写成为tpm, TPM, TPMC, TPCC 均不属正规。
2.TPC-E测试内容:数据库事务处理测试,模拟一个证券交易系统。
与TPC-C一样,实际衡量服务器及数据库软件处理在线查询交易处理(OLTP)的性能表现。
正规TPC-E测试结果必须提供tpsE值,即每秒钟完成多少笔TPC-E数据库交易(transaction per second),同时提供$/tpsE。
测试结果写成其他形式均不属正规。
对比:TPC-E测试较TPC-C测试,在测试模型搭建上增加了应用服务器层,同时增加了数据库结构的复杂性,测试成本相对降低。
44 每周电脑报2008.03.31推荐CWEEK浪潮实践行业定制——新品NF130D2巩固互联网市场近日浪潮推出了NF130D的升级产品NF130D2,这是一款专为互联网行业订制的1U机架服务器,具有良好的性价比,能够有效降低用户的采购和后期运营成本,可以帮助客户实现大规模、高密度、低成本部署。
目前这款产品已经在全国大量出货,价格实行平切策略,升级成本由浪潮公司自己消化。
作为NF130D的升级版,NF130D2的系统芯片组由3000系列升级到了3200系列,支持Intel至强 3xxx的全线处理器,包括最新的45nm平台,系统前端总线高达1333Hz,标配800HzDDR2内存,整个系统均衡优化,相比上一代产品性能提升30%以上。
NF130D2秉承了NF130D2许多设计思路。
由于互联网行业一般部署规模庞大,对服务器的空间、散热、管理等方面都有着严格的限制。
因而,独特的稳定性设计仍然是这款产品的主要亮点,硬盘RAID机制,采用了ECC内存,性能强大,稳定可靠;全新的风道加定点散热设计,使服务器内部空气流通更加顺畅,及时排出热量,环境温度高达35°时仍可稳定运行,缓解了1U服务器高密度部署的散热问题,这对于制冷能力不足的中小规模IDC来讲具有实用价值。
另外,相比上一代产品NF130D2在保护用户投资方面做了专门的优化,在扩展性、易管理性、功耗控制上做了专门的设计。
这款产品有4个DIMM插槽,最多支持4块SATA盘,而且增加了一个PCI-E插槽,为客户留了足够的扩展空间.由于领先的功耗控制技术,NF130D2电源只有270W,远低于业界同类产品。
同时,系统功耗随机配送浪潮睿捷服务器套件,具有系统无值守、远程管理、系统和数据备份等三大功能,大大简化服务器的维护与管理工作,有效降低了企业后期的IT维护投入。
Oracle数据库11g再创测试纪录 甲骨文公司美国总部于北京时间3月19日宣布,Oracle数据库11g在TPC-H千万兆字节基准测试中创下了新的世界纪录。
tpch测试方案TPC-H测试方案一、简介TPC-H是一个面向决策支持系统(DSS)的基准测试,旨在评估关系数据库管理系统(RDBMS)在处理大规模数据查询时的性能和效率。
该测试主要通过执行一系列查询来模拟不同复杂度和类型的决策支持系统查询。
本文将介绍TPC-H测试的背景和目标,以及设计和执行该测试的方案。
二、背景DSS是一种支持决策制定过程的信息系统,其任务是从大量数据中提取有用的信息以帮助管理层进行决策。
在这种情况下,数据库系统需要能够有效地处理复杂查询,以及对大量数据进行高效的存储和访问。
TPC-H测试正是为了评估数据库系统在这样的场景下的性能而设计的。
三、测试目标TPC-H测试的主要目标是评估数据库系统的性能和吞吐量,包括查询的执行时间、资源利用率等方面的指标。
通过进行标准化的测试,可以对不同数据库系统进行客观的比较,并为用户选择合适的数据库系统提供参考。
四、测试设计1. 数据生成与准备:根据TPC-H测试的规范,需要生成测试数据并将其加载到数据库中。
测试数据量可以根据实际需求进行设置,通常取决于系统的规模和硬件资源。
2. 硬件环境设置:为了保证测试的可比较性,需要在每次测试中使用相同的硬件环境。
包括服务器的配置、存储设备的性能等方面的设置。
3. 软件环境设置:选择一个稳定可靠的数据库管理系统作为测试对象,并安装相应的软件环境。
确保测试过程中不会发生意外的故障或中断。
4. 查询测试:TPC-H测试包含一系列查询,根据测试的需求和目标,可以选择执行所有的查询,或者仅执行部分查询。
测试期间需要记录查询的执行时间、资源消耗等信息。
5. 性能评估:通过对测试结果的分析和比较,评估数据库系统在不同查询场景下的性能表现。
根据测试结果,可以得出结论并为系统的优化和升级提供参考意见。
五、测试执行1. 数据生成与加载:根据TPC-H测试规范,使用相应的工具生成测试数据,并将其加载到数据库中。
2. 硬件环境设置:确保服务器和存储设备的配置和性能符合测试的要求。
TPC-H 标准中文版TPC BENCHMARK H (决策支持) 标准规范修订版2.0.0事务处理性能理事会(TPC)1致谢TPC感谢TPC-D分会成员公司的工作,他们开发的第二版TCP-D规范是第一版TCP-H 的基础。
TPC-D分会包括来自Compaq,Data General,EMC,HP,IBM,Informix,Microsoft,NCR,Oracle,Sequent,SGL,Sun,Sybase,和Unisys各大公司的代表。
另外,TPC还要感谢TCP-D分会的顾问Jack Stephens先生的贡献,感谢他在标准规范和DBGEN开发方面的工作。
TPC成员文档历史日期 1999年2月26 1999年6月24 2002年4月25 2002年7月12 2002年7月15TPC BENCHMARK , TPC-H , QppH和QhpH都是事务处理委员会的标志。
任何团体都可以免费复制本文的全部或部分,或者将本分的全部或部分分发给任何其他团体,只要:1、复制和分发的主要目的是传播TPC的材料;2、 TPC的版权提示,出版物的标题以及发表日期,还有其他提示都出现在复制品中以表明它是得到TPC允许的。
其它想复制或分发本文(包括哪些包含TPC问档内容但非TPC文档、规范或报告)而又不满足以上两个条件的团体必须得到TPC的书面许可。
版本草案1.0.0 修订版1.1.0 修订版1.4.0 修订版1.5.0 修订版2.0.0 描述通过邮件投票得到的标准规范的草案对标准规范的第一个小修改对关键字的说明在8.6节附加了关于硬件EOL的东西通过邮件投票得到的三年维护定价的草案 2目录致谢 (2)TPC成员 .....................................................................2 目录.........................................................................3 条款0:概述 (5)0.1 前言 .................................................................5 0.2 一般系统实现原则 (6)0.3一般测量原则 ......................................................... 7 条款1数据库逻辑设计 (7)1.1 商业和应用环境 .......................................................7 1.2 数据库实体,关系和特性 (8)1.3 数据类型定义 (9)1.4 表的规划 (10)1.5 执行的规则 (13)1.6 数据透明访问的要求 (15)条款2.查询和更新函数 .......................................................152.1 查询的一般要求和定义 ................................................ 15 2.2 查询一致性 ..........................................................17 2.3 查询确认 ............................................................20 2.4 价格摘要报告查询(Q1) ..............................................20 2.5最小代价供应者查询(Q2) (21)2.6运送优先权查询(Q3) (24)2.7订单优先权检查查询(Q4) (25)2.8当地供应者数量查询(Q5) (26)2.9预测收入变化查询(Q6) (27)2.10货运量查询(Q7) (28)2.11国家市场份额查询(Q8) (29)2.12产品类型利润估量查询(Q9) (31)2.13返回项目报告查询(Q10) (32)2.14重要库存标志查询(Q11) (34)2.15货运模式和命令优先查询(Q12) (35)2.16消费者分配查询(Q13) (36)2.17 促进效果查询(Q14) (38)2.18 促进效果查询(Q15) (39)2.19零件/供应商关系查询(Q16) (40)2.20 小量订单收入查询(Q17) (42)2.21 大订单顾客查询(Q18) (42)2.22折扣收入查询(Q19) (44)2.23潜在零件促进查询(Q20) (45)2.24不能按时交货供应商查询(Q21) (47)2.25全球销售机会查询(Q22) (48)2.26更新函数的一般要求 (50)2.27新销售更新函数(RF1) (51)32.28旧销售更新函数(RF2) ..............................................51 2.29数据库处理进程 (51)条款3:数据库系统特性 ......................................................523.1 ACID特性 ...........................................................52 3.2 原子性需求 ..........................................................54 3.3 一致性需求 ..........................................................54 3.4 隔离性需求 ..........................................................54 3.5 持久性需求 ..........................................................57 条款4 缩放和数据生成 (59)4.1 数据库定义和扩展 .................................................... 59 4.2 DBGEN和数据库填充 .. (60)4.3 数据装载时间 (68)条款5. 性能度量和执行规则 ..................................................705.1 术语定义 ............................................................ 70 5.2 配置规则 ............................................................70 5.3 执行规则 ............................................................72 5.4 度量 ................................................................76 条款6.SUT和驱动器 (78)6.1 测试配置模型 ........................................................78 6.2 被测试系统(SUT)定义 .................................................79 6.3 驱动器定义 ..........................................................80 条款7.定价 (81)7.1 被定价的系统 ........................................................ 81 7.2 定价方法 ............................................................83 条款8.完全公开报告 (85)8.1 报告要求 ............................................................ 85 8.2 格式指导 ............................................................85 8.3 完全公开报告的内容 ..................................................86 8.4 执行总结 ............................................................89 8.5 完整的公开报告的可用性 ..............................................92 8.6 完整的公开报告的修订 ................................................92 条款9 审计 (93)9.1一般性规则 ..........................................................93 9.2 审计员的审核表 ......................................................94 附录A:排序集 ..............................................................96 附录B:通过确认的查询变形 ..................................................97 附录C:查询确认 ........................................................... 100 附录D:数据和查询产生程序 ................................................. 100 附录E:简单执行摘要 . (100)4条款0:概述0.1 前言TPC Benchmark H(TPC-H)是一个决策支持的基准,它由一系列面向商务应用的查询和并行数据修改组成。
集算器TPC-H测试
本⽂文档描述以TPC-H作为测试标准,以Oracle作为测试基准,对不同高性能数据库、计算中间件、小规模Hadoop集群做测试分析,数据规模从百GB到1TB范围(企业级数据规模),对比各自表现并分析。
TPC-H简介
1.TPC是什么?
TPC(Transaction Processing Performance Council)事务处理性能委员会,是由数10家会员公司创建的非盈利组织,总部设在美国。
该组织对全世界开放,但迄今为止,绝大多数会员都是美、日、西欧的大公司。
2.TPC-H是什么?
TPC-H是TPC委员会制定的主要用于OLAP数据库管理系统的测试标准。
模拟真实商业应用环境,评测商业分析中决策系统的性能。
TPC-H包含一套动态查询和并行修改,关注吞吐量,注重查询能力。
22个基准测试sql可以全方位评测商业决策系统的综合分析计算能力,是业界具有普遍的实用意义。
3.表结构和关系
TPC-H 测试结果汇总(PostgreSQL/Hive/Oracle/集算器)
PG
100G
(优化前)PG
100G
(第一次优化)
PG
100G
(第二次优化)
PG
100G
(第三次优化)
Hive
100G
(新集群15台)
ORACLE
SSD
100G
ORALE
100G
ORALE
300G
集算器
SSD
100G
集算器
300G
Q1 1137.56 1075.34 1075 1129 146.19 592 1011.61 3680.55 407 1230 Q2 754.76 11380.05 697 713.56 157.02 43 135.14 801.11 65 240 Q3 1716.54 1774.81 1550.29 1674.32 161.01 370 774.82 3240.22 314 1745 Q4 2495.21 2395.52 1923.7 1745.4 275.12 346 869.43 3396.42 322 1181 Q5 2011.27 2187.65 1962.77 1754.63 229.13 429 963.04 3734.22 356 1453 Q6 959.62 1047.47 1020.28 1139.38 47.61 246 561.35 2406.61 237 854 Q7 1695.29 1746.73 1563.04 1462.71 367.88 385 772.45 3382.86 317 1880 Q8 33912.21 2221.38 2100.01 1829.07 334.55 354 795.91 3269.36 475 1875 Q9 3677.81 3230.06 2486.45 486.24 787 1317.33 4579.85 517 2556 Q10 3224.39 1702.35 1643.85 1591.6 184.57 382 994.04 3593.08 360 1570 Q11 2503.15 304.93 297.79 288.37 104.92 45 122.68 486.93 60 223 Q12 2840.52 1367.23 1419.8 1486.74 97.04 335 781.64 3144.89 296 1298 Q13 24132.01 487 364.09 344.1 123.02 245 177.99 996.55 262 1053 Q14 2254.98 1279.52 1257.57 1163.39 71.1 267 621.88 2561.88 297 3463 Q15 3012.47 2185.1 2211.87 1549.47 195.1 263 573.82 2419.01 252 873
Q16 1223.53 600 590.97 580.79 150.67 35 58.94 232.91 94 351 Q17 18516.02 3371.42 3363.24 2598.31 363.96 267 559.66 2449.99 485 1748 Q18 4785.7 2424.07 2389.31 2378.7 272.41 535 1363.26 5380.34 415 1435 Q19 18409.86 919.02 899.64 932.57 141.23 10 573.21 2372.55 267 975 Q20 6029.68 1709.72 1600.16 1573.25 247.67 334 907.15 3213.1 301 1100 Q21 5573.25 5979.57 3549.62 584.77 819 1449.63 6121.47 506 2307 Q22 1220.64 104.66 105.92 103.42 167.05 89 171.3 805.92 88 294 sum 131697.85 49535.03 37245.93 32074.85 4908.26 7178 15556.28 62269.82 6693 29704
11.81% ORACLE 31.40% ORACLE 41.76% ORALE 48.49% ORACLE
TPC-H 测试结果分析
100G数据规模下,串行汇总测试结果我们发现,15台Hadoop集群的计算效率只略好于1台SSD硬盘的Oracle,相同条件下的集算器与Oracle计算效
率基本是相等的。
到了300G规模下,集算器的优势就十分明显了,几乎是Oracle的一倍。