如今,多样的交易模式以及大众消费观念的改变使得数据库应用领域不断扩大,现代的大型分布式应用系统的数据膨胀也对数据库的海量数据处理能力和并行处理能力提出了更高的要求,如何在数据呈现海量扩张的同时提高处理速度和应用系统的可用性,使客户能同时得到更高的处理速度、更高的数据可用性和更大的数据集,是数据库系统面临的一个挑战。
1、引言
如今,多样的交易模式以及大众消费观念的改变使得数据库应用领域不断扩大,现代的大型分布式应用系统的数据膨胀也对数据库的海量数据处理能力和并行处理能力提出了更高的要求,如何在数据呈现海量扩张的同时提高处理速度和应用系统的可用性,使客户能同时得到更高的处理速度、更高的数据可用性和更大的数据集,是数据库系统面临的一个挑战。通过TPC-H基准测试,可获得数据库单位时间内的性能处理能力,为评估数据库系统的现有性能服务水平提供有效依据,通过横向对比促进数据库系统的整体质量提升,能更好地在国家重大行业和重大信息化工程中实现推广。
2、TPC-H原理简介
TPC-H是由TPC(Transaction Processing Performance Council)事务处能委员会公布的一套针对数据库决策支持能力的测试基准,通过模拟数据库中与业务相关的复杂查询和并行的数据修改操作考察数据库的综合处理能力,获取数据库操作的响应时间和每小时执行的查询数指标(QphH@Size)。
TPC-H基准模型中定义了一个数据库模型,容量可以在1GB~GB的8个级别中进行选择。数据库模型包括CUSTOMER、LINEITEM、NATION、ORDERS、PART、PARTSUPP、REGION和SUPPLIER 8张数据表,涉及22条复杂的select查询流语句和2条带有insert和delete程序段的更新流语句。测试分为Power测试和Throughout测试两种类型,Power测试是随机执行22条查询流中的一条测试流和2条更新流中的一条测试流,考核指标为ughout测试执行的是多条查询流和一条更新流对数据库的混合操作,考核指标是r测试和Throughout测试通过数理方式合成的结果为TPC-H基准测试中最关键的一项指标:每小时数据库查询数(QphH@Size),是@Size结果的乘积的1/2次方。
3、某数据库测试执行和优化过程
3.1测试执行过程
数据加载完成后需要进行数据完整性检查,30GB容量的数据情况应如下:
Figure 1该数据来源于中国评测
通过《TPC-H测试规范》排序集中的方式单线程执行功率测试中的22条SQL查询语句,2条更新流语句通过人工执行并统计时间;吞吐率测试为10个线程同时执行。
测试:使用spotlight和vmstat、iostat、sar命令同步。
3.2测试优化过程
为获得最优的数据库性能处理能力,在测试中根据数据库的性能展现进行了适当优化,优化内容主要如下:
Figure 2该数据来源于中国评测
3.3测试结果
(1)配置统计信息:
Figure 3该数据来源于中国评测
(2)测试结果统计信息:
Figure 4该数据来源于中国评测
(3)响应时间统计信息:
Figure 5 该数据来源于中国评测