1.1 交易和应用环境
TPC基准是由一套设计用来在典型的复杂联机事务处理运行环境下执行系统功能的基础操作组成。这些基础操作可以提供有生命力的上下文关系、描述大规模的供应行为、帮助用户直观的同基准附件相联系。工作量以命令处理顺序执行的行为和合理的数据库设计的提供为中心,在没有事务处理但是结构变化的情况下进行分布式提取。
TPC-C虽然不代表特定的交易片断的活动,但是更适合那些必需有管理、出售/发布产品或提供服务信息的行业(例如汽车租用、食品销售、部件供应商等)。TPC-C没有尝试成为怎样构造真实应用程序的模型。
一个基准的意图是在保持应用程序执行的基本特点的同时简化由生产应用程序所产生的运转多样性,应用程序执行的基本特点也就是系统利用水平和运转的复杂性。
大量的供应功能肯定会被用来执行处理登陆系统的生产通知单。这里面的许多功能对于技术性能分析来说不是最重要的,因为它们在系统资源利用方面或在频繁的执行方面会相当的小。尽管这些功能对于系统产品是至关重要的,但是它们仅仅在权威的基准中创造额外的多样性,因此TPC-C将它们省略掉。
被基准所描绘的公司是一个具有为一定数量的在物理位置上分散的销售区域和相关联的大商店提供大规模供应的公司。由于公司交易的扩张、新的大型商店和联合的销售区域的创建。每个地域性的大商店覆盖10个管区。每个管区为3,000消费者提供服务。所有的大商店为公司制订的订单中的100,000个条款提供货物。接下来的图表阐述了在TPC-C的交易环境下的大型商店、管区和消费者等级。
消费者请求公司处理新的订单或者要求现有订单的状况。订单被比较均匀的平分在10个订购路线里(例如条款线路)。条款中所有订单线路的1%在大商店里没有进货并且必须由其他的大商店提供。
这样的公司的系统同样用在由消费者、用来交付的订单程序和分析潜在供应短缺的采购标准调查的登陆支付
1.2.1 TPC-C 数据库的部件是为组成9个单独的数据基本表。在下面的实体关联表中阐述了这些基本表之间的联系并遵从条款1.4的指定规则。
图例:•所有的数据展示说明了数据库数据量要求(参照条款4.3)。.
• 在实体块种的数字表明了基本表的集的势(组的数量)。这些数字从W得到(大商店的数字)用来阐述数据库的规模(见第四章)。
• 在关联箭头上的数字表明关联的集的势(每个父节点对应的子集平均数字)。
• 加号(+)用在关联的集的势后或者数据表中用来阐述这个数字在再测量区间之上的(见5.5)初始数据库量中服从于小的变化如已经插入或删除的组。
1.3 表的设计
1.3.1 接下来的列表定义了各种表的最小限度的构造(属性列表):
• N unique IDs 意思是这个属性必须拥有所有的ID再最小的N unique IDs装置中、不考虑物理属性的表现(例如:二进位、集合小数、照字母顺序等)。
• variable text, size N 意思是必须能够支持任何可变长长度为N的字符串。如果属性列是定长字符串并且串中字符长度小于N,它必须用空格填补。
• fixed text, size N 意思是属性列必须能支持定长长度为N的字符串。
• date and time 意思是属性列必须能支持在之间的至少精确到秒的日期时间。
• numeric, N digits 意思是属性列必须能支持任何小数位数为N的值。数字域包含的货币单位(W_YTD, D_YTD, C_CREDIT_LIM, C_BALANCE, C_YTD_PAYMENT, H_AMOUNT, OL_AMOUNT, I_PRICE)必须能用数据类型给出精确的表达,要求精确到当前执行基准所规定的流通的最小货币单位。例如美元中的C_BALANCE可以表达(12.2)带符号的十进制位(带有固定的缩放比例)、精确到41比特的分币大小的整数或者精确到双精度实数64比特的分币 。
• null 意思是为给定的属性且总是同一个属性值所提供的越界值
注释 1: 对于每个接下来可以贯彻执行任何订单的属性列表用被测试的物理系统来提供表现。
注释2: 基本表和属性名仅仅用做阐述的用途,可能执行会用到不同的名字。
大商店基本表设计