在数据库和系统性能测试领域,TPC(Transaction Processing Performance Council,事务处理性能委员会)三大模型——TPC-C、TPC-H和TPC-DS,是衡量系统性能的黄金标准。这些模型不仅被广泛应用于数据库性能评估,也是企业选型、系统优化的重要参考依据。
一、TPC-C:在线事务处理基准
TPC-C(TPC-C On-Line Transaction Processing Benchmark)是TPC组织推出的针对在线事务处理的基准模型。它主要模拟一个商品批发公司的销售过程,包括订单处理、库存管理、客户管理等业务场景。
数据库设计
TPC-C模型涉及10张表,包括:
- PART:商品表,包含商品ID、名称、价格等信息。
- SUPPLIER:供应商表,包含供应商ID、名称、地址等信息。
- CUSTOMER:客户表,包含客户ID、名称、地址等信息。
- ORDER:订单表,包含订单ID、商品ID、客户ID、数量等信息。
- DISTRICT:区域表,包含区域ID、名称、地址等信息。
- WAREHOUSE:仓库表,包含仓库ID、区域ID、地址等信息。
- ITEM:库存表,包含商品ID、供应商ID、数量等信息。
- STOCK:库存历史表,记录商品库存变动历史。
- HISTORY:历史订单表,记录订单处理历史。
- REGION:区域历史表,记录区域变更历史。
事务类型
TPC-C模型包含以下事务类型:
- NewOrder:生成新订单。
- Payment:处理订单付款。
- OrderStatus:查询订单状态。
- Delivery:处理订单发货。
- StockLevel:分析库存缺货状态。
测试指标
TPC-C模型的测试指标为每分钟事务数(tpmC),用于衡量数据库系统每分钟处理的交易数量。
二、TPC-H:联机分析处理基准
TPC-H(TPC-H On-Line Analytical Processing Benchmark)是TPC组织推出的针对联机分析处理的基准模型。它主要模拟一个零售商的销售过程,包括商品销售、库存管理、客户管理等业务场景。
数据库设计
TPC-H模型涉及8张表,包括:
- CUST:客户表,包含客户ID、名称、地址等信息。
- LINEITEM:订单明细表,包含订单ID、商品ID、数量、价格等信息。
- PART:商品表,包含商品ID、名称、价格等信息。
- SUPPLIER:供应商表,包含供应商ID、名称、地址等信息。
- PARTSUPP:商品供应商表,包含商品ID、供应商ID、数量、价格等信息。
- NATION:国家表,包含国家ID、名称、地址等信息。
- REGION:区域表,包含区域ID、名称、地址等信息。
- SUPPLIER_NATION:供应商国家表,包含供应商ID、国家ID等信息。
事务类型
TPC-H模型包含以下事务类型:
- Sales:分析商品销售情况。
- Inventory:分析库存情况。
- Customer:分析客户情况。
- Supplier:分析供应商情况。
测试指标
TPC-H模型的测试指标包括:
- QueryPerSec:每秒查询次数。
- TotalCost:总成本。
三、TPC-DS:决策支持系统基准
TPC-DS(TPC-DS Decision Support Benchmark)是TPC组织推出的针对决策支持系统的基准模型。它主要模拟一个零售商的销售过程,包括商品销售、库存管理、客户管理等业务场景。
数据库设计
TPC-DS模型涉及22张表,包括:
- CUST:客户表,包含客户ID、名称、地址等信息。
- LINEITEM:订单明细表,包含订单ID、商品ID、数量、价格等信息。
- PART:商品表,包含商品ID、名称、价格等信息。
- SUPPLIER:供应商表,包含供应商ID、名称、地址等信息。
- PARTSUPP:商品供应商表,包含商品ID、供应商ID、数量、价格等信息。
- NATION:国家表,包含国家ID、名称、地址等信息。
- REGION:区域表,包含区域ID、名称、地址等信息。
- SUPPLIER_NATION:供应商国家表,包含供应商ID、国家ID等信息。
- CATERER:餐饮供应商表,包含餐饮供应商ID、名称、地址等信息。
- WAREHOUSE:仓库表,包含仓库ID、区域ID、地址等信息。
- DATE dim:日期维度表,包含日期、星期等信息。
- CALL CENTER:呼叫中心表,包含呼叫中心ID、名称、地址等信息。
- WEB_SITE:网站表,包含网站ID、名称、地址等信息。
- STORE:商店表,包含商店ID、名称、地址等信息。
- HOUSEHOLD:家庭表,包含家庭ID、名称、地址等信息。
- INCOME:收入表,包含家庭ID、收入等信息。
- EDUCATION:教育表,包含家庭ID、教育等信息。
- EMPLOYEE:员工表,包含员工ID、名称、地址等信息。
- CALL CENTER Staff:呼叫中心员工表,包含员工ID、呼叫中心ID等信息。
- WEB SITE Staff:网站员工表,包含员工ID、网站ID等信息。
- HOUSEHOLD DEMOGRAPHICS:家庭人口统计表,包含家庭ID、人口统计信息等信息。
事务类型
TPC-DS模型包含以下事务类型:
- Customer:分析客户情况。
- Sales:分析商品销售情况。
- Inventory:分析库存情况。
- Supplier:分析供应商情况。
测试指标
TPC-DS模型的测试指标包括:
- QueryPerSec:每秒查询次数。
- TotalCost:总成本。
总结
TPC三大模型——TPC-C、TPC-H和TPC-DS,是衡量数据库和系统性能的黄金标准。通过对这些模型的深入了解,可以帮助我们更好地评估和选择合适的数据库和系统,提高业务性能。
